RIA Frameworks: the never-ending story (JavaCampParis4)

A few weeks ago saw an excellent evening at Google’s: JavaCampParis4. Quite a few people showed up, maybe partly out of curiosity for the famed Google offices (around 60 people in total, much more than previous editions). Google obliged by providing a big room with a breathtaking view on the Paris Opera House, the best buffet I’ve seen for a free event, as well as goodies including t-shirts and USB keys. Thanks, Google!

I find that these events are often more social than technical. There are a means for many to catch up with colleagues and friends. As for me, I was delighted to chat with Jean-Laurent, Grégory Paul, and many others, as well as meeting Nicolas Martignole for the first time (indeed I almost missed out on the excellent buffet).

Still, one thing I was really interested in, is Rich Internet Applications (RIA) Frameworks. I don’t know about you, but me, I have been hoping for a while that a clear leader would emerge. Probably because I have been spoiled by such an experience in the past (remember the good old days of Struts 1?). So I naturally suggested a session on RIA Frameworks which got a pretty large turn out.

Executive summary: there is no clear leader. However, Flex, GWT, jQuery emerge as the oligarchy dominating the area (.NET frameworks were not discussed, given the Java-leaning crowd).

Details

My original question was “What is the best RIA framework for professional development?” I didn’t want to discuss flashy new tools, only those that dominated the marketplace and that a company could capitalize on.

The frameworks mentioned by the participants were (in bold, those that are used the most by the people present in the session):

  • GWT: an obvious option for Java programmers, since it appears almost anything can be done in Java. Generating production-level pages can be slow. Many libraries available for it, either as native-Java libraries, or as wrappers for Javadoc libraries (to be avoided if possible, as they are harder to control and to use TDD-style)
  • jQuery: a library now frequently found on high-traffic sites, which has been officially approved by Microsoft
  • Flex: the only one to provide a complete solution. Someone was using it as the only solution for frequently displaying financial data.
  • scriptaculous
  • Yahoo! UI: good cross-browser support, but quite complex to use
  • Java FX: a person viewed it as an interesting option for mobile devices, but few are betting on it. Apparently, it does not require a browser plugin (apart from a recent version of Java)
  • Other tools mentioned: Google Visualization API and its GWT-GVis simplification layer (for generating charts), Prototype (Ajax & GUI JS library), qooxdoo (Ajax & GUI JS library), LightView / LightBox JS (both for specific image display, based apparently on Prototype), Dojo (Ajax & GUI JS library), phoneME (a technical library for Java on mobile platforms), Ext JS (yet another popular Ajax & GUI JS library with a GWT wrapper; proprietary. Apparently, the models are a bit complex). Even Silverlight was mentioned.

From all this transpire that there is no clear leader in the RIA space. The one that is the most likely to be around the longest is probably Flex. But, as mentioned, it is not an answer to all issues. Though well integrated with Java development, it is not as natural to use as, say, GWT. In fact, GWT seems to be the only real Java-friendly solution, an important argument given the hordes of Java developers with few Javascript skills. The issue, of course, is that GWT is not a complete solution: its graphics capabilities are more limited than the competing JS libraries. Its Ajax features are not the best either, especially if you design a very responsive application, such as a financial app.

So, here is my opinion:

  • personally, if you want to branch out from Java, then Flex sounds like an interesting way of doing things that look good
  • as a company, if you want, to bet on a new technology and can afford to train your staff, Flex is here to stay so is probably a safe bet
  • as a company, if you want to leverage your Java developers fast, then GWT is probably the way to go; in that case, you will also have to use additional Javascript libraries, starting with JQuery

About Eric Lefevre-Ardant

Independent technical consultant.
This entry was posted in java. Bookmark the permalink.

3 Responses to RIA Frameworks: the never-ending story (JavaCampParis4)

  1. Bruno says:

    Honestly, I would give JavaFX a chance. Sure it is late, compared to Flex, but it has some great features.
    – Did you read some sample code or tried a tutorial ? As a programmer I like javaFX code much more than Flex: no XML mixed in, clean, concise and expressive code. Direct integration with existing Java code and library.
    – from the start, it is ready for mobile, TV … whatever. Agreed that, Flex/Adobe is rapidly progressing in this domain too: openScreen, but it is a second thought, an adaptation. Flex wasn’t designed for mobile from the ground up.
    – Finally, we will see what Oracle does with it. I would be really surprised, if they abandon the mobile market !
    – Javascript is fine, but as a platform, I prefer the JVM than a browser !
    – There is a podcast: RIA weekly by Michael Cote (Redmonk). It is the same guy from the famous “Drunk and retired” podcast !
    – I was interested in Java Web Framework and tried to sum up things here: http://brunovernay.blogspot.com/2009/03/how-to-choose-java-web-framework.html

    Regards
    Bruno

  2. Todd says:

    Given the Java leaning crowd, I’d give Apache Pivot (http://incubator.apache.org/pivot/) a look. Having built applications in Flex, I can say that Pivot’s much more powerful in terms of both layout capability and richness of APIs.

  3. did you hear ZK framework. that’s java based ria framework and very easy to use. besides gwt. I’ll chose zk because it’s easy and simlple.

Leave a Reply

Your email address will not be published.