Yesterday : Gwt happy hours

Yesterday, Sfeir organized a GWT evening at “La Cantine“. It was a nice event with twelve interesting topics.

One topic was a comparison between GWT, Flex and Silverlight. It reminds me the “Swing vs SWT” war a few years ago when I was developing a lot with Swing. The parallel is reinforced by the fact that, for me, coding with GWT is so similar than coding with Swing : I feel the same joy and same disapointment. Same joy writting testable and refactorable code in full Java. Same disapointment dealing with lack of bindings, lack of UI guidelines and too much flexibility.

Bindings : This is a force of Flex, WPF and Silverlight over GWT. Declarative bindings is a huge accelerator for simple and repetitive operations. I’m getting used to it with WPF and will miss it next time I develop with GWT.

Flexibility : Yesterday, an XP team explained that it took them some time to remember that MVC was a good thing to use in a Swing application and could also be good thing to use in a GWT application. I love Swing and GWT’s flexibility but it comes at a price.

Lack of UI guidelines : Three years ago, I posted an article complaining about most AJAX GUIs being not very usable or at least familiar to users. I still complain. 8 years ago users had troubles with Swing applications because they didn’t behave like standard Windows applications. Nowadays, each RIA application has its own look&feel and own behavior which makes it difficult for users and also for developpers who need to reinvent the wheel on each project.

Which of these frameworks will won? I would say none. I’m not even sure that any of these will live as long as Swing or JSPs. It’s even funny to see that we are reinventing the wheel again and again, framework after framework : bytecode interpreter for Javascript (remember JVM ?), Silverlight sandbox (remember Applets?), …