Folks in this forum know that I've been pretty much on the Adobe Flex
train - have overseen development of Flex software for a couple of
years now.

More lately am dealing with AIR development specifically.

Before the Flex development was very much now RIA web app focused.
However, now the emphasis is on desktop (AIR) with a hybrid RIA web
app approach (a portion is installed as AIR desktop app, but
significant portions still load as Flex forms from a web server).

As such am discovering some of the short-comings of AIR. The obvious
comparison point is the Java JRE.

The most obvious and most often complained about shortcoming of AIR is
that there is no API for launching other arbitrary apps in their own
process context. In our case we actually want to build a portal
program launcher in AIR. Yes, some of these will be URLs to web apps,
but some of them are also desktop apps.

Another is that even though AIR has File and FileStream classes for
interacting with local files, there does not appear to be any
provision for async interaction with stdin, stdout, or stderr. It
would be great to launch an AIR as a subprocess and to do interprocess
communication via just using stdin/stdout (I've written a zillion
powerful multi-processing perl applications along these lines).
Instead folks end up resorting to some agreed upon localhost port and
doing socket i/o. Doing a stdin/stdout between parent and child
processes would be much better, as would be performant and trouble
free from configuration and security standpoint.

There are several projects that have emerged that attempt to buck up
the deficiencies in AIR:

FluorineFx Aperture
Shu
Merapi

It's interesting that such a cottage industry has sprung up. The
Merapi project is a Java to AIR bridge. It actually does asyn
messaging between Java code and AIR code where they done some sort of
AMF implementation to marshal objects between Java and ActionScript3.

Turns out there's very keen interest in this kind of thing.

A lot of folks are very much sold on the Flex development model - it
is really nice, productive, and delivers great results in terms of the
GUI. Yet when you start working on the desktop - well, AIR tends to
leave a lot to be desired in terms of maturity. Those of us from the
Java world know things could be much richer. It would be great to
combine the strengths of both - hence solutions such as Merapi.

The obvious take-away for Sun here is that some of their marketing
message about the strengths of Java (inclusive of JavaFX) is that the
Java SE is indeed very mature and feature laden. So a word of advice
to Sun - start concentrating your marketing message for JavaFX in the
space that Adobe AIR is targeting. To do that though, they're going to
have to include something like Webkit in the Java SE so they can also
have a first rate HTML rendering solution (and a fast JavaScript
interpretor that's competitive to Google's V8).

Adobe needs to bolster AIR with more features while Sun needs to buck
up the web programming story of using HTML/JavaScript/DOM in
combination to JavaFX. So here is opportunity for some good old
fashion big vendor competition that seeks to win the hearts and minds
of developers.
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups "The 
Java Posse" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/javaposse?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to