Silverlight vs. HTML 5: Microsoft is not trying to lead but instead to play it safe.

3 בנובמבר 2010

Unless you’ve been hiding under a rock for the last week or two, I can’t imagine that you’ve missed the conundrum that Microsoft’s STB President Bob Muglia has created.

All around the blogosphere bloggers have started to ponder whether Microsoft has abandoned Silverlight etc. Microsoft responded fast with a post from Bob Muglia on the Silverlight Blog Team, claiming that we didn’t really mean to create such a fuss; Silverlight is and will be the best technology for creating RIA applications over the web, and for Line of Business applications no one can argue that there is a better solution nowadays.

It seems that Microsoft was surprised by the amount of hysteria around the Silverlight Community, and Microsoft Israel’s Guy Burstein has also published a post saying that Silverlight is not abandoned nor dead.

However, this is hardly the point. For me, what is disappointing in this whole story is that Microsoft is choosing to play it safe, instead of trying to lead the revolution. Here’s why:

 

1. Silverlight is not dead and nothing had actually changed

All that Microsoft had said is that they abandoned the idea that HTML will be replaced eventually by Silverlight. As most of us had already noticed, Silverlight’s penetration to the wide audience (63% v3 and above) is still way behind Flash (reportedly 96% v9 and above).

image

It might seem that MS are just accepting the hard truth. But it’s not being realistic, It’s being pessimistic for no real reason.

Microsoft is saying that when it comes to a true cross-platform technology, nothing is going to be able to win over the open HTML5.

Open is good. I want to be able to write once and target everything. It has never been done before, and as time marches ahead this problem becomes more and more concerning, seeing the evolvement of the Smart Phones and Smart Devices.

But if open is what you’re looking for – why HTML5? Why not make Silverlight 5 completely open?

2. HTML 5 Solves nothing, and it’s already outdated.

Truth be told, I cannot understand the hype around HTML5.

First of all, HTML5 is not the issue. JavaScript 3 is. (or more precisely – ECMA Script 3.)

If we want to build a true RIA applications, JS simply does not cut it. When compared to high level languages such as C# it is lacking in every aspect possible. Language features are decades behind C# 4, Not to mention that C# (& Silverlight) has Visual Studio 2010 – The best IDE in the world… What exactly are we supposed to write JS in?

JavaScript does not support Multi Threading. It is not a type safe language. It is hard to debug. Can anyone even try and think of a way to do UnitTesting? Test Driven Development? and the list goes on and on.

JavaScript can’t and never will be able to compete with non W3C languages. Although it has almost twice the lifespan of C# it is still very much primitive.

More than that. The markup language that is associated with JS – HTML5 – is also stuck in the past. HTML5 has yet to be accepted by the web community and already it is not up to date!

So yeah, we can now do <Media> tags. Yippee. But what about Adaptive Steaming?(Smooth Streaming in MS’s lingo). What about true VOD experience? and protected DRM?

Even when it comes to the most hyped out feature of HTML5, the Media tag, it is already light years behind Flash & Silverlight!

Let me make my point clear; These HTML5 problems are not going to disappear when HTML6 / JS4 will come. The open W3C standards are always going to be behind commercial technologies such as Flash & Silverlight. Just look at the Silverlight’s last version’s features: Out of browser applications, COM inter-op, Elevated Permissions… All from v3 to v4 in just about 6 months!

Just think what would it take for HTML6 to allow this functionality. First it would take 4 years of the W3C bureaucrats to decided.. then one more year for the next versions of all of the browsers to accept the standard.. and then just 10 more years for the users to decide they want to download and install the latest version (when so many are still using IE6 :-S). I don’t know about you guys, but 15 years from now I’m expecting Warp Technology, not HTML6 🙂

One last point in the HTML5 coffin: If you want total cross platform you should indeed stick to HTML. That is, HTML 4.

image

HTML5 is as proprietary as Silverlight if not more in the PC market. Only in one area does HTML5 have a true advantage over Silverlight when it comes to market penetration – The Smart Phones.

The two most prominent mobile OSs today, iOS & Android, do not support Silverlight, and are actively pushing HTML5 forward. Rest assured though. Google and Apple are not in it for the “open standard”. They are in it for the money.

The current hype of HTML5 is not coming from the web community. It is coming from the bullying of the new tough kid in the block, Steve Jobs.

Apple’s fight against Flash (and Silverlight) is not about Open web standards. That is just why Apple would want you to think. And sadly, Microsoft is biting the bait, instead of fighting back with the oh-so-cool Windows Phone 7 (which is SOO much easier for programmers than iOS & the dreaded Objective C)

Microsoft should not cave to Apple & Google. They should push back.

image

3. What should Microsoft be doing?

It’s easier to just play it safe and tell everybody that “we never really tried to change the industry”. When you don’t play to win, no one can say that you lost.

However, what I expect of Microsoft is to be innovative. To speak up and say what everybody else knows – true RIA development is not possible with HTML5/JS3 and that is not going to change anytime soon. The solution lies elsewhere.

I would like to see Microsoft declare that Silverlight would become an open standard, completely open source. I would like to see Microsoft take a real stand and say that “yes, we do think that Silverlight should replace HTML, and yes, we do think that HTML should be abandoned”.

It’s a hard battle against two of the most powerful companies in the world today, but hey – every programmer that is sick and tired of HTML & JS will be right there behind you 🙂

 

And on a personal note;

I’ve been a programmer since a very young age. I’ve programmed in practically every GUI technology out there. MFC, VB, QT, Asp, Flash, ASP.Net, Winforms, WPF, Silverlight.

I’m a programmer because I love it. I love building software. Never had it been more fun than with WPF & Silverlight. I believe in Silverlight very much. I just hope that Microsoft would believe in it also.

 

image

הוסף תגובה
facebook linkedin twitter email

כתיבת תגובה

האימייל לא יוצג באתר. שדות החובה מסומנים *

7 תגובות

  1. Shay Friedman6 בנובמבר 2010 ב 10:25

    First of all, I agree that Microsoft is currently imitating and not innovating. They need to get back to going over the edge, a place where you might fall down or fly high to the skies.

    Secondly, regarding HTML5 – it might not be perfect but the most important feature of that technology is cross-platformability. You can say Silverlight is much more rich (and you'll be correct), you can say Silverlight is much more developer-friendly (and you'll be correct) and you can say ton more things (and you'll probably still be correct) but when it comes to the final decision, you'd want something that runs everywhere. And by everywhere, I mean non-Microsoft environments as well. HTML5 is not yet everywhere, but it will get there much sooner than Silverlight.
    It has happened before – Java. This outdated programming language is used by 20% of programmers world wide while C# is somewhere around 5%…
    This is just the proof that user-friendliness/cross-platformability is much more important than developer-friendliness.

    And to some things I don't agree with you:

    "C# (& Silverlight) has Visual Studio 2010 – The best IDE in the world… What exactly are we supposed to write JS in?"???
    Man, the vast majority of developers out there use other IDEs and they succeed, on a regular basis, to live through the day…

    "It is not a type safe language" – JS is a type-safe language but it is dynamically-typed. This is a feature, not a problem.

    "It is hard to debug" – new developer tools in IE/FireBug/Chrome make it a pretty simple job.

    "Can anyone even try and think of a way to do UnitTesting" – it is always more complicated to unit test UI logic, but nonetheless people do test JS code. And let me tell you, it's not hard. This is just one example – http://stephenwalther.com/blog/archive/2009/05/18/unit-testing-javascript-with-fireunit.aspx.

    Well, that was a long comment!
    All the best,
    Shay.

    הגב
  2. ProfessionalDev6 בנובמבר 2010 ב 21:54

    Wow, it's like you read my mind. Well put.
    100% agreed.

    The comment on Mr.Jobs is spot on.
    Mr.Jobs thingy with HTML5 is just a way to try to balance the fact that everything on the iBlah platform is proprietary.
    The fruit company is not open in any way but wants
    us to believe that they care about standards. Ha Ha Ha. Big joke. I cannot stand those guys.

    Like you I am a developer, and from my standpoint MS is making a big mistake.
    Silverlight is above all a professional platform to build professional apps.

    I never thought that MS would be able to deliver SL to all platforms, and it never bothered me.

    Computers as we know it will be around for a long time. Our body structure is not going to change any time soon and keyboard, mouse and video are so far the best we have got to interact with the computers in
    a civilized way in an office or even home environment.

    הגב
  3. eladkatz7 בנובמבר 2010 ב 11:34

    Shay –
    I have to say I strongly disagree.

    Microsoft is very innovative. Silverlight is the best distributed GUI technology out there, by far. It's not innovation that they miss, it's courage. And that's THE point of my post.

    HTML5 is not really cross platform. It just runs on iOS because apple doesn't want to let anybody else in. They have the most closed OS ever, and they claim they want "open standards". What a joke.

    HTML5 + JS is not something you can really program in, when compared to real technologies like Silverlight. It pales in comparison in every aspect. My point about UT & TDD wasn't specifically about these features (although cool to know that you can UT javascript 🙂
    What I meant to say is that the development experience is far from allowing real enterprize development. Silverlight on the other hand gives you almost anything that WPF can do these days, and that's not less than amazing.

    As to IDEs, I'm well aware that eclipse users are managing to write code.. and well aware that VS is not the only IDE. All I'm saying is that is the best IDE out there – I can't imagine you think differently?

    הגב
  4. eladkatz7 בנובמבר 2010 ב 11:38

    ProfDev:
    Basically we all knew for quite some time that MS is not trying to target all platforms. That is basically what Bob Murglia said.
    But that is exactly what's bothering me… Why not target all? why not try and replace HTML completely?
    Apple is trying to strong-arm the entire industry. Microsoft put quite as much pressure as Apple.. But even without pressure – just say that you're trying to give a true cross-platform experience, and that Silverlight is going to be an OPEN technology, and voila – we have ourselves a dual 🙂

    הגב
  5. C. Bess11 בנובמבר 2010 ב 17:48

    I concurred until you called JS inferior. Have you ever used javascript? If yes, have you ever heard of node.js ?

    "When compared to high level languages such as C# it is lacking in every aspect possible". Really, every aspect, every?!

    It does not support multi-threading… you mean like being able to execute logic asynchronously?

    PHP is not multi-threaded, yet it is one of the most popular web languages. Facebook some how found a use for it, even though it lacks multi-threading support.

    HTML5 answers many questions and provides many improvements to move us closer to the web.

    הגב
  6. Avi Pinto17 בנובמבר 2010 ב 6:38

    man, without flaming silverlight, which i'm sure is a great tool.
    GO LEARN JAVASCRIPT – and i mean really learn the language.
    then go back and fix the paragraph saying it is inferior.

    the problem with javascript is her ugly boyfriend called dom.
    and when using some kind of framework(who said jQuery) to shield you from it – it is awesome.

    but the main thing should be using the right tool for the job, and not sticking with one tool and saying the rest is crap(except from VB maybe :))

    הגב
  7. Vishal Kaushik15 בספטמבר 2011 ב 9:21

    Well here we are talking about two different things and trying to compare. HTML5 is a script where as Silverlight is compiled code. Things like Flash and Silverlight run on top of current HTML platform, they never live in isolation. HTML5 is not trying to replace Silverlight, rather it is going to provide a new W3 standard for Web. All web browsers will have to support this emerging standard as a de-facto thing. Whereas Flash and Silverlight will always run as a plug-in. Commercial aspect of Flash and Silverlight will always make them feature rich or else they will lose.

    הגב