I suppose this will be the one “technical” post about the whole Adobe Engage thing.
Background
For several years, I worked on Chandler, a cross platform desktop app which uses the open source wxWidgets toolkit to hide platform differences from an application. I am currently managing the Cosmo engineering team, which is developing a web UI for Chandler data which is stored in the Cosmo server. In a previous life, during 2000, I built a rich internet app (RIA) using Flash and Java.
The problem as I see it
I think that a lot (but not all) apps will become RIA’s, and the base platform technology for RIA’s is very important. Too important to be controlled, or designed by any single party. The current vogue toolchain, AJAX, has this property. It also has the property of being a cross platform development nightmare. On the desktop, you commit yourself to a single cross platform library/technology, and then you spend the rest of your time wrestling with it. In AJAX, you have multiple browsers on each platform that you want to support. Not only that, you have multiple versions of each browser. If your use of AJAX is limited to simple animation and so forth, that’s not that big a deal. But when you want to build something that has rich interaction, all those versions are a compatibility nightmare. There are also the performance problems with Javascript. Firefox partisans will be shouting “Tamarin“. Only problem with Tamarin is that it doesn’t help IE or Safari or any other browser. So much for platform independence.
Flash/Flex
Enter Flash/Flex. Flash has a great cross platform story. One runtime, any platform. Penetration of the Flash Player is basically the same as penetration of browsers capable of supporting big AJAX apps. There are nice development tools. This is highly appealing.
What is not appealing is going back to a technology which is single sourced and controlled by a single vendor. If web applications liberated us from the domination of a single company on the desktop, why would we be eager to be dominated by a different company on the web? Yet, this is what Adobe would have us do, as would the many who are (understandably, along some dimensions, anyway) excited about Flex? Read Anne Zelenka’s post on Open Flash if you don’t think that Flash has an openness problem. I’m not eager to go from being beholden to Microsoft to being beholden to Adobe.
What to do?
Unfortunately, there don’t really seem to be many alternatives. There’s OpenLaszlo, but much as I like the Laszlo folks, perusing the mailing lists shows that it’s still pretty much a Laszlo show. So while the licensing is better, the community development part doesn’t seem to be much better. There’s also the possibility of Adobe having a change of heart regarding the openness of Flash and Flex. But it’s hard for me to see why they would do that. I guess we can only hope that Adobe’s experience with Tamarind warms it to the benefits of a more open model for the future of Flash. Sun has finally woken up, so maybe it’s not impossible for Adobe to either.
[Update: see my followup]
Pingback: » Why I don’t think open source Flash is necessary | The Universal Desktop | ZDNet.com
Pingback: » Open web advocates: Get off your high horse | The Universal Desktop | ZDNet.com
Pingback: » Why Rich Internet Applications are important for the browser | The Universal Desktop | ZDNet.com
Pingback: Ted Leung on the Air » Blog Archive » Thoughts from the Seattle Adobe AIR stop
Pingback: Discover ECMAScript 4: The Future of ActionScript - Zeus Labs
Pingback: OSCON 2007 at Ted Leung on the Air
Pingback: Ryan, Open Source, and Flash at Ted Leung on the Air
Pingback: Just Browsing » AIR, Flex and the Open Web
Pingback: Architecture of a Desktop RIA platform
Pingback: Episode 20: Ted Leung on open source in the corporate world | Herding Code
Pingback: Discover ECMAScript 4: The Future of ActionScript - Josh Talks Flash
Pingback: New Projects | Brendan Eich
Pingback: The Open Web and Its Adversaries | Brendan Eich
Pingback: Episode 20: Ted Leung on open source in the corporate world
Pingback: AIR, Flex and the Open Web |
Pingback: AIR, Flex and the Open Web | Salsita Software