Silverlight vs HTML 5 Debate – A Dilemma for CTOs, A Concern For .NET Developers, and May be a pointer towards Microsoft’s Internal Politics
Alright, a lot of arguments are already going on in the twitter sphere about Microsoft positioning HTML 5 on top of Silver light. A lot of opinions are floating around in the blogosphere too. My 2 cents here.
If you are not aware about the story, then I suggest you to read Mary Jo’s Initial post that says Microsoft: Our strategy with Silverlight has shifted based on her conversation with Bob Muglia - that kicked off the entire debate, and also read this post from Mashable that says “Microsoft Shifts from Silverlight to HTML”
I’m not a Silverlight ‘only’ developer, though I'm a Microsoft MVP in Client Application Development. But I loved Silverlight for its potential - I used to discuss with my friends how big Silverlight is, and how it may become a platform for developing “write once, run anywhere” apps for web, desktop, mobile & handheld devices, IPTVs etc – especially with cloud in the background.
So, let us take a step back and have a look at what exactly is the strategy shift from Microsoft. All of us know that, for some time, Microsoft is projecting Silverlight as the “Cross platform, Cross device technology”
From Scott Gu’s Blog, From his Silverlight 2.0 Post that he posted some time back.
Silverlight opens up a ton of opportunities to build significantly richer client experiences that run cross platform and cross browser.
So, now Bob Muglia quoted as saying
“Silverlight is our development platform for Windows Phone,” he said. Silverlight also has some “sweet spots” in media and line-of-business applications, he said.
Ah, so what do you infer from that? If you are a Silverlight dependent guy, who makes your living by selling Silverlight trainings and content, you might say “Don’t worry a bit, Silverlight is still there, Silverlight was never about Websites, you can still use it to build apps, you can still use it to develop for Phone”. That may be a consolation to some of the Silverlight developers. You can console them even more by saying - “Wow guys, cheer up, Silverlight is not yet dead as you think, there is just change in strategy. It was never for web”. But hold on, there are other grave concerns here.
A Dilemma for CTOs – The Business Angle, A Matter of Trust
The fact is, today, a number of enterprises already started investing in Silverlight for their next generation web applications. So Bob, what those guys are going to do now? Scrap the existing Silverlight projects, because Microsoft says Silverlight is not that cross browser/cross platform any more, and it is no longer the preferred platform for developing web applications?
I think Microsoft should have been more organic in their positioning strategy, because now most CTOs who invested in Silverlight for their next generation ‘cross platform/cross browser’ applications should be scratching their heads, and should be searching web to get some explanation for justifying their investments now hanging in mid air. Your clients are going to come and ask you - “Why you are building this on Silverlight, instead of HTML5? We need stuff in HTML5” – How you are going to convince them? I’ve already seen couple of tweets like “CTO is already reneging/disallowing #Silverlight for any client facing solution”. And even if you are not a CTO, you can understand what I meant. I want to point out in bold, It is a matter of trust. Now, any CTO or technology guy might think twice - before betting on any Microsoft technology in future.
A Concern for .NET Developers
A Pointer Towards Microsoft’s Internal Politics?
So, long point made short – Bob Mugila rubbed a couple of guys who invested in Silverlight the wrong way – Microsoft will lose the trust from at least a handful of F500 CTOs, and will receive the wrath of a good number of Silverlight developers who might want to learn HTML, JQuery and CSS in depth now!!
Oh Bob, why you did this? Especially when you don’t have enough tooling around HTML5 and JQuery, and you want your developers with you? Not because Silverlight is less adopted. Silverlight was well adopted as a development platform – most Microsoft developers were excited about Silverlight, most CTOs were planning to increase their investments in Silverlight. The end user adoption by internet users was 60%, compared to 96% of Flash.
Then? Is it because Microsoft felt HTML5 is the only way they can get into the Apple devices by projecting HTML5 more, by kicking Silverlight a bit down? Oh, wait, but No. HTML5 is not driven by Microsoft, it is not yet ready or adopted totally, their existing developers don’t have any know-how there, and Microsoft development environments don’t have any solid tooling available to build HTML5 applications.
Huh, Curios. But at least for me, the reason seems pretty simple – If Microsoft supports Silverlight too much, IE9 will lose it’s prominence. If Microsoft shops start building their applications in Silverlight, no body will care of upgrading to IE9, because you are not browser dependent. The IE guys may not need that to happen. Also, if Silverlight is promoted more, Silverlight based operating systems (like Windows Phone 7 OS) will be in demand for hand held devices more than Windows OS itself. So, whether some one in Microsoft is letting down their Silverlight followers and even betting on customer trust for protecting the job/importance of the guys in IE/Windows OS team? Or, if they have a better reason, there no better time to stand up and speak out.
So, what about Silverlight’s future?
Microsoft should stand corrected. Don’t let Silverlight go down under the carpet, don’t limit it just ‘for phone’ or only for other ‘sweet spots’. Commit towards investing more in Silverlight, to implement more features and tooling around them - so that it’ll stay on top of HTML5, as a value added platform. Say that publicly. Continue the efforts for making it cross browser and cross platform. Continue supporting Moonlight initiatives for Linux. Promote Silverlight based OS platforms (Windows Phone 7 OS) more – so that it can get more adoption for thin devices and IP TVs. Provide better support for Silverlight in Mac for OOB scenarios. Most importantly, don’t de-motivate your awesome Silverlight team.
Ok, those are few thoughts I have as of now :) Happy Coding!!
Update: Nov 02, 2010: Bob just came up with few good clarifications on the entire drama, Read this post from Bob Muglia
Other Must Reads: