Jun 12

Silver Air

With news that Adobe had recently released and renamed their “Apollo” project to “AIR”, I decided that it was perhaps time to discover exactly what Adobe was incubating. In terms of software and companies, there are none which I follow with any amount of zeal; if a piece of software delivers on promises of being better than what I currently use then I have no qualms of switching. As such, I hadn’t followed Adobe very closely since their merger with Macromedia, and was only dimly aware of their release of CS3.

It surprised me then that AIR, the Adobe Integrated Runtime, seemed such a departure from what Adobe had released previously. Essentially it is a virtual machine that allows developers to use HTML, CSS and Javascript or Flash and Flex to develop “Rich Internet Applications” for the desktop. That’s the corporate rhetoric, and it took me the best part of a morning to figure out exactly what AIR was trying to do and the rest of the day wondering Why?

AIR is nothing more than a virtual machine in the same vein as the Java Virtual Machine: it provides a central target for development and, in theory, will allow programs developed for it to run identically across all platforms which support it. In writing this an admirable goal (Java’s maligned “Write once, debug anywhere” idiom notwithstanding), it’s not until you dig deeper until you realise just how ridiculous AIR appears. Ignoring the jargon and the acronym soup, AIR allows HTML, Javascript and Flash developers to create applications for your desktop; the end result is a program which installs and runs from your computer instead of the vicious wilds of the internet. The question is raised really as to why I would want a Flash developer to go anywhere near my desktop: a pantheon reserved for people with some semblance of UI design which the vast majority (not all) of Flash developers lack.

Both the sample and showcase applications are less than stellar, with such awe inspiring developments as an RSS reader! A desktop bookmarks organiser! An online storage solution! Or how about a good old fashioned map? What about some eternally useful desktop widgets? Testing them out I could only think: five years ago these would have been merely interesting.

“Rich Internet Application” seems like some kind of multilayered oxymoron, instantly conjuring up a swathe of gradients and pithy animations, married with protracted jargon like “mash-up” and “web 2.0” all the while robbing me of my standardised UI interactions. The web is only just taking its first formative steps into this field greater interactivity; we’re still testing this through a browser, not an experiencer. Until both the technologies and mindsets involved mature, we certainly don’t need to bring this frontier pursuit to the desktop.

Of course, the one good thing to come from this distasteful look at where Adobe is heading is the chance to engage with some of the other technologies both Adobe and others have developed. Flex was next on the list and after once again cutting through the advertising spiel and marketing jargon, it turned out to be a set of UI components for Flash. Obviously Flex has come a long way from the Server/Client setup that the late Macromedia used, and with a neat XML system, Flex attempts to bring Flash to application developers. Once again I fail to see why this is a good thing. Apart from the speed of prototyping, I can think of no Application Developer worth their title who would seriously consider Flash over more capable, accessible and mature technologies.

So two for two, Adobe seem to be pushing technologies which when isolated, are advanced and progressive, but seem to focus more on the wow than the why.

This trail ultimately led to the Microsoft “Flash-killer”, Silverlight. Essentially Silverlight is a combination of both Flex and Flash in a far more, if you’ll forgive the pun, flexible coating. Silverlight attempts to offer a genuine alternative to standard applications with a still evolving set of UI features but with the capacity for tried-and-tested programming languages to control them. Fundamentally, Silverlight suffers from the same downfalls as an AIR/Flash/HTML combo: accessibility and speed. However it seems that Microsoft has a far better grasp of their goal (a better form of online application) than Adobe.

Some of the criticism levelled at Microsoft over Silverlight include their lack of adherence to standards such as SVG. Ordinarily I would agree with this given the ongoing fiasco (to put it lightly) with Internet Explorer; however Silverlight and its competitors are still very much emerging technologies and it’s only the disparate parts which have been standardised rather than the entire package. Microsoft is a paid-up member of the W3C and could well have had a hand in those standards; but with increasingly vocal barbs being thrown about as to the practices of the W3C, it makes one wonder whether the standards are actually worth anything. Microsoft once said that just being a standard does not make it the best way to do things; this may seem like a spoiled brat reinventing the wheel (how’s that for metaphor mixing?) but in a small number of cases, this is very much true. You can be just as much hindered by those standards as empowered by them.

And then of course, at the very end of the rainbow was the recently released Google Gears which claimed to be able to run web applications offline. Once again, I fail to see the point in this beyond mobile devices, but kudos to Google for making the implementation rhetoric free and refreshingly simple to explain.


Reply