During the past few days the Microsoft ecosystem went through one of its hottest periods in years. Center stage has been claimed by the false debate Silverlight vs. HTML5. It all started with this year’s PDC where Microsoft did not talk about Silverlight at all (except for a few transient remarks). The real flame was actually generated by an article where Bob Muglia was quoted, article which now is known by the “our Silverlight strategy has shifted” name (you can read it here). All of the sudden, the word spread like fire that Microsoft has sacrificed Silverlight for HTML5.
I admit, Microsoft’s messaging was not the best possible, leaving the door open for such rumors and fueling the false debate. Lately, both Steve Ballmer (here) and Bob Muglia (here) issued strong statements which make it very clear that Silverlight will continue to play a fundamental role in the company’s strategy at least for the foreseeable future. Still, the replicas of this artificial debate have propagated rapidly and quite far through the industry. That’s why I thing it’s important to try to stop for one moment and think about this.
Why do I think SL OR HTML 5 is a false debate? Well, for a few reasons.
First of all, I see these technologies serving rather different needs than similar ones. I have very serious doubts that HTML 5 will be too quick to raise to the level of Silverlight and Flash in terms of user experience quality. Yes, yes, I know about all the new, “killer” features of HTML. But I also remember when HTML 4 was supposed to be the one that will bring down the mirage of unified UX from the heavens to the mortals. Did it? I’d say not really. Anyone remember XHTML? Let me rephrase, anyone know what XHTML is? It doesn’t matter anymore, it’s dead. It was supposed to be that huge and radical step that will get all of us rid of the historical peculiarities of HTML. The reason it was shot in the head was exactly because it was too radical. Seems to me HTML’s nemesis is backwards and cross-browser compatibility. To be clear, I do think HTML 5 is the best bet we have for application compatibility. But I also think it will remain for quite some time a common denominator rather than a unifying force. On the other hand, Silverlight offers you fantastic quality for the user experience and has excellent tooling supporting it. It will continue to grow and improve and will continue to be one of the best choices for RIA. I have yet to find the proper arguments to fight this vision. True, it’s not completely cross platform but it moves towards that goal. The speed of this move remains to be seen but it’s hard to argue with the fact that Silverlight’s rate of adoptions is nothing short of spectacular.
So, on one hand you will have a common denominator (HTML 5) supported eventually on most browsers and most platforms. It will deliver an improved experience over the current one (HTML 4) but it will not be a match for Silverlight of Flash. The kind of stupid underground war that undermines true compatibility has already started (see how features that are merely ideas or proposals surface in WebKit and are taken for granted as HTML 5 standardized features, but that’s another story). On the other hand you have Silverlight and Flash to deliver the ultimate user experience while incurring the extra payload of the browser plug-in. I think neither HTML nor RIA (Silverlight, Flash) is going to emerge as the miraculous solution for all web apps. Both are here to stay, so instead of HTML OR RIA the more realistic question is WHEN should I use each of these approaches.
The next reason why I see SL OR HTML 5 as a false debate is programming languages. JavaScript and its support have improved in past years tremendously, yet somehow I simply cannot put an equal sign between it and C#. The power of .NET that stands behind Silverlight is very hard to be matched by JavaScript engines. Traditionally, writing JavaScript code has been at best challenging, if not difficult. There is a price to be paid for universality, and I guess JavaScript is part of that. I have no doubt that it will improve even more, but still, I see the two approaches fundamentally different. So, again, I have a hard time believing that either one will emerge as a clear winner covering the other with dust. We will continue to live with both worlds and we will have the same hard time making decisions. And the majority of our web sites will present a combination of RIA and JavaScript for many years from now.
Finally, leaving aside glitches in communication, it is pretty clear to me that there is no Silverlight OR HTML 5 debate inside Microsoft. In a recent keynote, Scott Guthrie acknowledged that there are more people working on Silverlight now than any time in its history. And that’s good and reassuring news for me showing without doubt that betting on Silverlight is as safe as ever. In the mean time, I’m also quite happy with the fact that Microsoft decided to place a large bet on HTML 5, simply because I believe the new version of HTML will gain a significant place in the years to follow.
I hope Microsoft will continue with its efforts to clarify the message that got a bit foggy and will be able to be more articulate in sending the message that its bet on HTML 5 is not meant to be a replacement for Silverlight. If I’d have to speak for Silverlight (which clearly is alive and doing quite well) I’d use Mark Twain’s words after learning about the publication of his obituary in the New York Journal:
“The reports of my death are greatly exaggerated”.