Just watched Neal Gafter’s Google tech talk about closures again. I really hope that the community gets behind this proposal. Let’s do it right rather than opting for any “pragmatic” solution that amount to a concise syntax for anonymous classes. Gafter’s proposed will allow the “language” to change between updates to the Java Language Specification. This will allow more experimentation and innovation. I encourage you to watch the video for the details. Additional information can be gleaned from the JavaPolis interview.
There has appeared a consensus proposal on the javac.info site. It does appear that Bob Lee (Crazy Bob) has been turned around. I hope the consensus is not a compromise on the original proposal’s intent.
Bruce Johnson busts the myth that Google Web Toolkit is only for single page applications – amongst other things – in the video presentation available from InfoQ.
Starting to hear worrying reports about the heath dangers of WiFi radiation. I certainly hope it’s unfounded as I am not sure what I’d do without always on, wireless broadband!
A hilarious jab at Java. A must watch!
The other ads in the series are also worth a look!
Just browsing through the Thoughtworks open source projects (after finding Buildix and backing up). I noticed YAJWF (Yet another Java web framework) – or perhaps just YAWF (Yet another web framework) – the Waffle Web Framework. I could not contain the reaction: “Oh no, not yet _another_ Java web framework :(“. However, I had this feeling a couple of years ago when the main author of the Click framework was promoting his framework on the AJUG mailing list. At the time I was developing UI with Macromedia Flex and didn’t feel all the full frontal pain of regular web development. I am currently experiencing Spring MVC (without Webflow) and I feel the pain – oh, I feel it! Click looks to relieve the exact pain I am feeling on my current project but Wicket looks to have a brighter future (and more future proof).
I haven’t looked at Waffle yet. There are too many others to consider first. This is my current short list:
- Wicket for power and community
- Click for simplicity.
- Perhaps some JSF based “stacks”: Facelets + Seam, Oracle ADF, IceFaces, JBoss/RedHat/Exadel Ajax4jsf + RichFaces.
- Perhaps Tapestry 5 when it’s finished and if the components and community appear
There are sooo many web frameworks out there. It _is_ so easy to have the reaction: not another please, please, no no no! There is certainly a need for a few. The move away from “model 2 mvc” frameworks is gaining momentum now (thank goodness). The term “model 2 mvc” seems laughable now. Web frameworks are getting compared all the time! The people involved are often parochial and the forums can get heated .
It’d be nice if there were some ideal framework for Java developers (those .NET guys sure have it easy!). The reality is that many frameworks would be suitable. Choose one that works for you and keeps you productive (i.e. avoid model2/action based frameworks if you have much interactive to deal with). I’m currently hoping that Wicket gains an upper hand. JobServe lists zero Wicket contracts currently though😦 .
Here’s a brain dump of my current thoughts on Web Frameworks:
- Click with OpenRico. A simple and effective however there are some gaps for more complex flows. Some good OpenRico examples for simple DHTML effects and AJAX.
- Wicket. More complicated than Click and generates less HTML for you. However, it would work well with Web designers – templates are valid XHTML. I like it but the documentation leaves something to be desired.
On the radar is JSF, GWT, Tibco GI, Yahoo UI, Dojo:
- JSF with an open source stack of MyFaces+Tomahawk + Facelets (templating to avoid JSP)
- GWT. Looks great for single-page web applications like Gmail.
will update again soon…
Here is an interest article from sdtimes about SAP’s 7 Drivers of Development Innovation.
- Interview users for requirements, not executives
- Ensure you have an application layer separate from your UI (sometimes called Service Layer)
- SaaS works. i.e. hosted software works
- Use in-memory databases
- Speed matters
- Don’t focus on UI glitz
- SOA will accelerate software development
I’m not entirely convinced about point 7 but the other points are certainly sound.