The difference is not in the technology and their features but in deployment. The RIA-Rich Internet Application frameworks are pretty close by features. True, Flash especially the new 8.5 and 9.0 stuff from Adobe/Macromedia, still leads the way in richness and reach. However,Flash still exacts a hefty operational performance and particularly development load. But Flex 2 and Swift 3D and Open Laszlo are changing the development equation. Meanwhile Java continues to progress steadily in ease of development. Java is about on par with Flash/Flex 2 and distinctly ahead of AJAX which still does not have a robust IDE. Try out the free NetBeans with Matisse, Suns Java Studio Creator or some of the Eclipse tools to see how easy it is to develop either desktop or Web based applications. Javas reach is now extending into Mobile Phones and Smart devices better than any other RIA Framework including Flash and AJAX.
So now the obstacle for robust RIA development frameworks is not development or feature richness but now deployment. And its still nasty in the deployment world. Literally what Microsoft will let be delivered to their 90-95% of desktops determines what happens on the desktop. And despite their many “open and responsible” protestations to the contrary, Redmond has been the chief barrier and quagmire constructor for holding up deployment of AJAX, Java and even Flash.
It was with this action, Microsoft ceded all credibility in open and standards Web development. Anything it had and continues to deliver continues to ignore many hard won W3C and industry standards while maintaining proprietary “Works best in Windows” hooks. And Microsoft, operating in stealth mode, makes no apologies.
Prime example – even after paying Sun $2B for its antitrust infringements on Java, the settlement Redmond insisted on allows the company to distribute a hopelessly obsolete Java JVM with every version of the OS. In addition, Microsoft continues to pollute the Java development stream with its non-standard J++ and J# versions of Java in Visual Studio. But Java and the Web are resilient and they tend to work around obstinance. The Web Gallery site Fotki is an example.
Fotkis Use of Java
One of the critical aspects of Web Galleries is how easy it is to upload your images into your own album pages on the Gallery providers websites. Flickr and Menalto Gallery both do good jobs – using trim and clean Java technology. But the best I have found so far is Fotki:
Now what makes this use of Java even more poignant is the fact that Fotki has just had to rollback a whole series of changes made to their site – primarily the new AJAX features. But the Java upload routine, which is very nice indeed, withstood the test of usage. Look what Java allows Fotki to do.
On the Web browser page Fotki shows a tree view of all the files, a list of the content of the directories and then thumbnails of all the images chosen for upload. And this works with crisp response time. Users can also add descriptions and tags to individual photos. In short, all the tough upload editing is greatly simplified.
Now I have been privy to so see some Intranet portals also done in Java – and again the story is the same. The Java applets in portal windows allow users to integrate local data with regional, national , and corporate Web views in ways that have long been wished for but have been waiting for SharePoint or Notes or whatever to come up to cross platform, cross OS, cross application speed.
Now this is not a blind endorsement of Java in the RIA framework showdown that will be occuring over the next 3-5 years. But it is an advisory to state that a)dont count Java out of the race and b)continue to bargain tough with Redmond. Redmonds backing off of only their own OfficeXML is but a sign of how tough deployment to the desktop can be. By moving to open and standards embracing tools like Firefox and Opera browsers or Java and Flash applets companies gain leverage against the obstinate and counter-productive barriers to open deployment that Microsoft is constantly erecting with its sometimes excellent but always proprietary and certainly deployment-option limiting Windows applications and services.