AIR coming of age

Now is a hugely exciting time to be involved in the web. I believe we’ll look back at the early 2000’s with a sense of awe at the rate and extent of technological change. Personally, I believe it’s faster and more engaging than it ever has been before. The 1990’s were exciting in a different kind of way – in a crazy, rollercoaster, unsustainable, first toe-dipping way. It was good for jobs, too – I remember a period of a few months where I literally – and I exaggerate not – got 2/3 offers a week; and I wasn’t really that much cop, either. That doesn’t happen any more. Or maybe Google lost my number 🙂

The good ‘ole days were fraught with tension and frustration, too. There was so, so much we couldn’t do – so many hacked together approaches, so many nastinesses in browser renderings, so much uncertainty about frames, browser-dependent tags and dialup speeds. Even saying that makes me chuckle now – hey, we used to worry about whether a page was 10Kb or 20Kb – imagine…

Today, things are markedly different. The challenges are – at least to someone like me – actually much more satisfying. They’re not generally about whether system A can talk to system B, they’re about the more human challenges: will person X understand what I mean when I say Z; will they use what I’m building, and how? How can I hit this niche? What’s the best marketing strategy? Can I ever, ever make money doing X?

More and more, we’re also asking “where will we use it?”.

Everyware – the notion that the internet is all around us – is, as you will probably know, a notion that I believe forms an absolutely central part to where this all goes from here. And core to Everyware are real questions about convergence and re-purposing (remember those phrases..?).

A while back, I took a quick look at the blurring line between desktop and web apps. Back then I commented that two major player were entering the “Rich Internet App” (RIA) space – Microsoft with Silverlight/WPF and Adobe with what had been Adobe Apollo and which became Adobe AIR.

Microsoft is – obviously – never a player to be underestimated. They’ve got the desktop sown up, an unfathonable quantity of cash, and some serious technologists who know their shit. On the other hand you’ve got Adobe, previously somewhat irritating to “serious” web developers who didn’t want to learn Flex or Flash, and considered them “something for them weird designer types”.

Microsoft have done some nice stuff with Silverlight and WPF. But…it seems terribly, horribly cumbersome – it’s all a bit .Net, a bit codey, a bit deep and impenetrable. Frankly, a bit ‘fn dull. Over on the other side, Adobe chose a lightweight “if you can do it in xhtml, know a bit of AJAX and can cope with expanding your javascript a smidgin” approach.

You know what? Adobe are winning, hands-down, with absolutely no doubt whatsoever: AIR is getting huge numbers of column inches from the major blog writers compared to Silverlight. The AIR applications being built are deep, beautiful and useful, even for the Enterprise. They install easily, they’re rich and quick and well designed. They make the transition from desktop to web seamless.

And as usual, it’s the easy, lightweight, familiar approach which is beating the heavy, technical and possibly “more feature rich” one. Once again, people like me – semi-serious web types – can play with technologies we understand; we can see results almost immediately; we can view source and copy what other people have done. And we are writing desktop apps which you can – pretty much as-is – also deploy to the web. From a reality perspective, this is an exciting way to think of applications: true develop once, deploy to many channels.

This is holy grail land. If you haven’t played with AIR, go do it now…

12 thoughts on “AIR coming of age”

  1. I haven’t looked into either much. But my gut tells me that the real web/desktop blurring will happen through the browsers themselves. XUL (the Mozilla framework) is hugely popular, and Mozilla Prism looks interesting. However, the most developed thing is the ‘offline’ support provided by the new Firefox 3 (which is based on an emerging HTML5 standard) – kind of like Google Gears, but without needing an extension.

  2. Have you ever actually used Silverlight?

    It’s a browser plugin.

    AIR is a desktop framework, closer to widget toolsets like Yahoo Widgets and Google Gadgets.

    The dichotomy is false, and a straw man.

    If you want to compare it to a Microsoft product perhaps it would be better to compare with Microsoft Desktop Gadgets, which are also based on XML, JavaScript, etc.

    On the other hand, if you do want to slate Sliverlight, perhaps you should go and watch the 30 second videon then have a go on

    FWIW I don’t really care about AIR, Silverlight or MS Gadgets but understanding the differences and where each of them competes is important.

  3. Phil, I think the relationships between WPF, Silverlight, AIR, Flex, etc are interesting, but not really the point I’m trying to make here. I would also argue that to focus on Silverlight as “just a browser plugin” misses the focus, as does calling AIR “just a desktop widget engine”.

    The bigger point is not about the tech but about the users (remember them?) and how they are beginning to interact with the tools that are being presented to them; ditto about how we as developers can begin to build functionality which is build once/run many. The fact that once again a lightweight approach is the one gaining traction on the desktop is a pertinent one, I think.

  4. A couple of quick points.

    From Frankies comment I agree browsers themselves will play a major part and offer some good extension points but I still think ‘one broswer to rule them all’ will never happen (as much as any of the vendors wnat it) .. so while things like XUL and Prism are great they are only available in one browser.

    Moving on to Phils comments .. having used all 4 technologies (AiR, Flex, WPF, Silverlight) I can see where Mike is coming from as using AIR is a very pleasent frictionless experience compared with deploying a WPF (or Silverlight) app. With AIR (simplest example) point at a web page on your HD and its becomes a dekstop app, updating is handled exceptionally well too.

    I suppsoe AIR is more directly comparible to WPF / XBAP but microsoft dont seem to be doing themselves many favours in the clarification of what should be used where.

    Microsoft are working hard and with silverlight2 beta2 many of the controls in siverlight are directly comparible with their WPF equivilents so you can see a future where you can use the same XAML between either framework (up to a certain point).

    Some of this also comes down to the fact that microsoft target programmers and adobe target designers, so adobes demos will always look a tonne better than any microsoft ones even if programattically they dont do anything exciting, but its what the kidz want huh ? 😛

  5. Cheers Steve, good points. From my understanding, the developer/designer line was (at least supposed) to be blurring with Expression Blend, etc. But I guess we’ll see who adopts what.

  6. Sorry Mike, I’m not sure if I just disagree or whether you’re being disingenuous but your post talks about how marvellous AIR is to develop with compared to Silverlight – you even criticse Silverlight for the codey-ness, so to say that you’re talking about the users just isn’t 100% true (again, if you did want to make the techy argument, I’d say that the AIR vs. Silverlight debate is manufactured and people should be comparing AIR to the Microsoft widget stuff).

    I would ignore the artificial boundaries you’ve set up in the title and most of the post, and look at your last paragraph and the last bit of your comment above – the lightweight stuff *is* winning, because it’s delivering apps to users, but here I think there are too many players to draw any conclusions but it’s certain that AIR has a guaranteed set of mindshare given the existing number of customers they have across their product lines.

    I’m sure there are a couple of lines to insert here about the unbelievably bad user interfaces of most AIR (and other ‘lightweight’ desktop framework) applications 😉

  7. Mike,
    So the real question is -have you managed to get something working in AIR using the HTML/Javascript interface? I’ve had a quick go myself with main stream Flash authoring and it seems to work pretty well – if a little rough around the edges. But what you seem to be hinting at is that you managed to make something which looked pretty nice using a free text editor and the web skills you already have. Regardless of the actual technical issues between WPF, silverlight etc this seems to be the key advantage that you’re talking about.

  8. There’s something called ‘Microsoft Desktop Gadgets’?!

    Ignoring measures such as the ‘column inches’, I think AIR has got off the ground faster because there’s a larger creative & development base, and the design & development methods for Flash transfer much easier into highly visual desktop applications.

    .Net, and the other Silverlight development tools have a smaller powerbase of those that work with the visual side of things, IMO.

  9. Until about a year ago I would have considered myself more of a traditional C++ Windows developer (although I’ve been fooling with web stuff for years). Last year I had the privilege of going to Adobe’s developer conference (Max) and was amazed at how their technologies have progressed. Adobe targets Flash toward designers and Flex towards developers. If you’ve ever used any of the MS Visual Studio products, Flexbuilder is an easy jump. Also, Adobe is working on a product code-named “Thermo” that is supposed to fill the gap between designers and developers.

    I agree that AIR is a desktop framework. Another important note is that AIR is really a virtual machine (like Flash Player) that allows a developer to access desktop services (embedded database, access to the HD, on/offline connectivity, etc). These are services that are not appropriate for a browser to use due to security concerns (anyone remember ActiveX). At Lectronimo, we used AIR to build a kiosk application that was very visual and contained a database to collect info for our client. We could have done this with other tools, but they would have been much more painful to get the same result.

    As for Microsoft, I don’t think you can ever ignore the 800lb gorilla. I really think Adobe has a jump on the technology, but MS has an incredible developer base that will go where they lead it.

  10. Hi Frank

    Thanks for your comment – I agree that MS is always a player to watch out for. They do suffer (rightly or wrongly) from lack of “web2 coverage” – but I think it’s fair to say that social web applications built in .Net (for example) are few and far between. Whether this says more about the language or more about the politics remains to be seen.

    What I do know, and I’m repeating myself here, is that the AIR applications I’ve seen have not only been beautiful to look at, they’ve also been data-rich and easy to install. And to answer Joe’s question – yes, I’ve started playing with AIR and as a traditional ASP’er (eek) and “understander of web technologies but not hardcore coder”, I’ve managed to build some stuff which is halfway decent. And this is important, I think – not just for me because I’m learning new stuff – but because there is likely to be more creativity and volume when technologies start to become this accessible.


Leave a comment