Windows 8, Flash and Silverlight: some very bad news
In amongst the flood of details emerging about Windows 8 is the news that the IE 10 browser in the lightweight Metro front-end won’t support plugins. In the scheme of things this might sound pretty small beer, but it’s hugely significant for the long term future of Rich Internet Application (RIA) development and for the web in general.
Most immediately it’s another kick in the teeth for Flash, still reeling from Apple’s iOS ban. It’s not exactly a death blow, as the Windows 8 desktop version of IE will still support the player, but it’s clearly another major disincentive for developers who believed Flash was as universal as HTML.
Understandably all the focus has been on Flash, but even more telling and extraordinary is the realisation that the new no-plugin policy means that the Metro browser won’t even support Microsoft’s own cross-platform RIA technology, Silverlight!
So just what is going on?
Why has Microsoft changed course so dramatically, betraying its Silverlight vision and shafting its developers in the process?
Details on such a major announcement are disappointingly thin on the ground and largely based on an MSDN blog post (Metro style browsing and plug-in free HTML5). However the few reasons given to justify the decision such as they are – “the experience that plugins provide today is not a good match with Metro style browsing and the modern HTML5 web” - are very familiar. Essentially it’s the same argument Steve Jobs gave - "leaving the past behind" - when he outlawed plugins for iOS some 18 months ago. In short, it’s time for the web to move on from old-fashioned “legacy plugins”.
Regular readers will know that I have never bought this argument. More to the point, I know that Microsoft doesn’t either. After all, the company has spent the past five years arguing the exact opposite: namely that page-based HTML is great but that there are certain things that it just isn’t well suited to deliver: little things like high quality media streaming, digital rights management, interactive vector animations, device-based capabilities such as camera and microphone handling and, more generally, the richest possible, desktop-style web experience.
XAML & Silverlight
So why has Microsoft changed course so dramatically, betraying its Silverlight vision and shafting its developers in the process?
Well of course Microsoft would say that it hasn’t. After all, the beautiful XAML-based technology lives on and thrives in Windows 8, it’s just that the end product won’t be delivered in the browser via Silverlight, but rather as standalone Metro apps. Moreover, with the promised Metro App Store, Microsoft is offering its developers a simple way to get their work out to users and to make real money from it based on the now well-established Apple model.
There’s a lot of truth to this and Metro is undoubtedly an exciting opportunity for XAML-based developers - but why not support Silverlight browser delivery too? How can Microsoft possibly argue that it can’t support its own existing lightweight Silverlight player within its own lightweight Metro front-end? In fact, if you really wanted to help Silverlight deliver on its potential, gain market share and reward your long-suffering developers, why not build Silverlight support into the Metro version of IE10 while relegating Flash to the desktop version?
It's business - as usual
I think that the real answer to this question is also the real answer behind Steve Jobs’ decision to ban Flash: follow the money. Cross-platform, in-browser RIAs extending the universal browser to deliver rich and protected apps and content directly between producer and consumer aren’t a legacy problem to be solved; rather, they are a leading-edge, cloud-based threat to the platform-dependent empires that Microsoft and Apple have built up, and to the App Store and in-app content empires that they are currently building.
Keep the lid on the universal, browser-based user experience by killing off the in-browser RIA technologies and restricting the web to HTML5 and you get to deliver the full RIA experience outside the browser via your iOS and Metro apps, and via your platform-specific App Stores and in-app subscriptions. Not only is your all-important operating system and software ecosystem protected from third-party, cloud-based, cross-platform alternatives; you also get to take 30% of all paid-for app content, with no possibility of competition within your platform.
Look at it like this and Microsoft’s decision to effectively sacrifice its in-browser Silverlight vision makes absolute sense. The RIA vision behind Flash and Silverlight in which the web delivers on its full potential as a cross-platform, universal, open and truly rich connection direct between producer and consumer is a wonderful dream, but this is business.