Flash, AIR, Silverlight, WPF… which is which?
So, it’s a given — there’s been a ton of buzz about AIR vs. Silverlight lately, and then the mindful reminders from the detail-centric community members about why AIR and Silverlight are not really the same kind of technology, and so shouldn’t be compared — it should be Flash vs. Silverlight, or AIR vs. WPF, or whatever.
So, is it fair to compare Flash and Silverlight as technologies — they’re both web-browser enabled plugin technologies? Or, is it more precise to compare AIR to WPF, since both of them ground themselves in the new frontier, the user desktop? Are all those blog posters right, should we be really making sure we don’t mix technologies when we make comparisons?
From a technology standpoint, yes, this is important. But maybe not from a strategic web ecosystem perspective. Maybe the AIR/Silverlight comparison (however buzzword misguided it may have initially been) is more on track that most of us have realized thus far.
I’m still, and have been for a long time, more a flash fan than what microsoft has had to offer. And with the recent explosion of interest in the Silverlight community, I’ve been reluctant to admit that Silverlight really had all that much to offer. I’ve had many a conversation with my Microsoft-technology developer friends about the various reasons why Adobe or Microsoft has a better head of steam to roll in and (re)define the true RIA technology environment. Not unexpectedly, being an Adobe enthusiast, I’ve had a thousand and one reasons why Adobe’s going to rule this space and MS will be the “never-was” second tier player.
But, I had a paradigm-shifting ephiphany over the weekend. I realized that what the Flash-to-AIR evolution has in common with the WPF-to-Silverlight evolution is that it’s the natural extension, although in opposite directions for each vendor, of core competency into the space that each’s counterpart has ruled for so long.
You see, MS has clearly ruled the desktop-application space for a long time. And they have a huge contingent of developers who are thoroughly entrenched in the “.NET ways”. Those same developers live and die by the powerful Visual Studio IDE and dev tools that MS has been so good at for so long.
But they’ve (MS devs) struggled a bit to extend themselves into the web-application world, because the browser is such a feeble “client” compared to what MS Office apps are used to leveraging for instance. There are a lot of improvements, with ASP.NET and the various open-sourced toolkits that come along with it. But you still get the sense that MS is playing catch up.
So, naturally, MS has created a way for all those MS developers and apps to start cross-targeting the web space by giving the browser a facelift with new technology (via the Silverlight plugin), while still being able to deliver a strong, powerful application experience for users. What will we see in the coming months? I predict we’ll see incredibly powerful and cool extensions of MS apps put directly inside the browser… MS Word on the Web™, anyone?
But then, what about Adobe? Yeah, they’ve got great developer tools in the desktop environment too. But their real strength has been they’ve been going at the browser-on-steroids RIA environment with the Flash plugin for a long time now, and they clearly have a strong lead. And then, consider that even outside of what Adobe’s done with Flash, there’s a *huge* community of really incredible developers building all kinds of amazing Javascript+HTML web applications that really defy what we once thought was possible inside the chrome walls of the browser.
So, along comes AIR… and here’s where my naivety and paradigm-shift were blown wide open. While certainly AIR will make Flash-on-the-desktop apps a reality… I think the far bigger tour-de-force that’s happening is that it will be so drop-dead easy for web applications to make the jump to persistable, offline-capable, desktop apps… truly the “next frontier” if you’ve been playing in the web application arena for any length of time. So, what will we see from AIR? We’ve already seen moves to make some really popular and powerful web applications available on the desktop. So, flickr/youtube/twitter/myspace/facebook/etc/etc/etc — all these great web apps are probably going to head toward a desktop near you soon.
And if you want to get really funky… what about applications which can leverage both Silverlight and AIR and Flash and WPF all in one? I predict it can and will be done. The question is, who will do it.
In broad, rough concepts, AIR represents Adobe’s move to the desktop, and Silverlight represents MS’s move to the web. They’ve passed the boundary that used to imaginarily separate them from each other, and have moved boldly into each other’s space, and both are doing a great job of it so far. So now it appears that truly the comparisons *should* be AIR + Silverlight.
What’s so great about this revelation? The point really is, both of these moves, while in opposite directions, are incredibly important for defining what the next generation of applications look like, both on the web and on the desktop. I for one am no longer hoping that Adobe beats MS (or the other way around), but that they both keep spurring each other along, and that us web dev authors continue to have more interesting and exciting choices when it comes to the technology we can leverage for our user audience.