Follow Slashdot blog updates by subscribing to our blog RSS feed


Forgot your password?
Java Programming Python The Internet

Thoughts On the State of Web Development 253

rmoskal recommends his blog post up at Most Media on finding the right level of abstraction, Grails, and SOFEA. "[Three years ago] I was very excited about Apache Wicket as the way to develop line of business applications with a domain model, CRUD [create-read-update-delete] screens for maintaining the model, and in the most interesting cases, doing something else useful besides. I still like Wicket. It has, as its website says, a small conceptual surface area.' It reminds me of Python in that 'You try something it usually just works.' In many respects, though, Wicket seems to be at the wrong level of abstraction for the for the sorts of line-of-business applications described above. If your team is spending any time at all writing code to produce listing, filtering, and sorting behavior, not to mention creating CRUD screens and the back-end logic for these operations, they are probably working at the wrong level of abstraction. ... Recently I did a small project using Grails and was quite pleased. Grails uses groovy, a dynamic language compatible with Java, and is based on the proven technologies that I know and love well: Spring, Hibernate, SiteMesh, Maven, etc. ... I get all the power of the Java ecosystem without the fustiness and lack of expressivity of the core language (no more getters and setters, ever!)."
This discussion has been archived. No new comments can be posted.

Thoughts On the State of Web Development

Comments Filter:
  • java centric (Score:3, Informative)

    by thetoadwarrior ( 1268702 ) on Sunday April 18, 2010 @06:23PM (#31890554) Homepage
    This isn't really about web development in general but Java web development and writing getters / setters is the IDE's job.
  • by Animats ( 122034 ) on Sunday April 18, 2010 @06:34PM (#31890634) Homepage

    Forcing the e-brochure-like HTML-based browsers to act like desktop/CRUD GUI's is like trying to roll Pluto up Mt. Everest: people have kept trying to pull it off with AJAX and whatnot for more than a decade, but it's still kludgy, bloated, buggy, security-challenged, and version-sensitive. It's time to throw in the towel and start a new tool and markup language.

    Right. Java applets!

  • Re:getters setter :) (Score:2, Informative)

    by Anonymous Coward on Sunday April 18, 2010 @06:42PM (#31890694)

    Geez, again with the same excuse: "My IDE generates them automatically". Yes it does, but Java IDE's are not the only one's that can do that, duh.

    Deeper problem is that you later have to use those "fully automatically with just a few special clicks" getters and setters like this in your code: point.setX(point.getX()+1); instead of just writing point.X++;
    2.7 times longer line than it ought to be. And with current java IDE-generated non-VM supported getters/setters all of the shorthand abbreviations such as ++ -- += -= *= etc are unusable. Good luck writing any complex formulas on one line with such getter/setter syntax :P

  • by Anonymous Coward on Sunday April 18, 2010 @06:45PM (#31890728)

    haven't they been trying this with flash, silverlight, javafx?

  • Re:getters setter :) (Score:1, Informative)

    by Anonymous Coward on Sunday April 18, 2010 @06:47PM (#31890742)

    If you are using Java 1.6, look into project lombok:

    You annotate your class with @Data and the getters and setters are generated as you add/remove private fields.

  • by phantomfive ( 622387 ) on Sunday April 18, 2010 @07:50PM (#31891092) Journal
    It's not even just that: as soon as you get out of the three column format, HTML has trouble. The idea of CSS is sound, to separate the presentation from the content, but in practice it fails (if you don't believe me, ask yourself this: when was the last time you used a


    as a line break? That's really not what they're for).

    It's sad, but the problem is HTML has been developed by a committee, and not just a committee but a committee with conflicting goals. Some people want to make desktop-like GUIs, others want to make it impossible to define precisely what your page will look like in a given browser (this makes it more portable, in theory). Some people on the committee are thinking in terms of page layout, and some are trying to manipulate it in any way possible to give their browser a competitive advantage.

    With all this in mind, HTML makes a lot more sense.

  • by Hurricane78 ( 562437 ) <deleted.slashdot@org> on Sunday April 18, 2010 @08:22PM (#31891296)

    It’s called QtDesigner & friends. Or XUL. Look it up.
    Basically, it’s an old hat. A very old hat. I did things like that back in 2003.

    I’m back to plain and simple... compiled desktop/server/mobile programs. I still use something like XUL (but in EBML with a tag-mapping attachment), but I mostly generate that “XUL” from SQL DDL, as an itermediate representation, and plain machine code as a final result.
    As an example: A complex application usually takes the time to write a clean SQL with the appropriate interfaces (30-60 min), a run of my generator (3 seconds?), then I add a bit of non-standard business-logic (duration depends. Between 20 minutes and a whole week.), use a small tool to generate a color palette and fonts for the design (15 min), edit a tiny text file of annotations, and run the final compilation (<5 min).

    That thing now has a an optional server part, a AJAX browser client, a real full application for Windows, Linux and Mac, and a small but full-featured (no compromises!) phone and PDA client. Done, done, and done.

    So with a big of luck, I can churn out a $2000 tool in a day, and a $10000 tool in a week.
    But I do not really like doing stupid apps for stupid business clients. So I do as little as possible.
    Which explains why I can hang out here all day long, posting lengthy comments. :)

    (My main business is game design, but since the money is not coming in as much as planned, I haven’t stopped doing stuff like this yet. Maybe I should hire someone to do it for me, and just become Leisure Suit Larry. ;)

  • by Daengbo ( 523424 ) <> on Sunday April 18, 2010 @09:20PM (#31891668) Homepage Journal

    TFA (Shock! I read it) says that this is his new preferred method. Separate all the server and client-side logic. Push almost all the logic into the client.

  • by Civil_Disobedient ( 261825 ) on Monday April 19, 2010 @09:27AM (#31894994)

    In Java, its a weakness about interfaces- you can't have a data member in an interface, so any interface needs to use getters/setters.

    Not true if the field is declared static.

"This is lemma 1.1. We start a new chapter so the numbers all go back to one." -- Prof. Seager, C&O 351