Ah, this is a tough question!
As I mentioned yesterday, I was in Microsoft Office in Montreal for the PDC keynote diffusion after which there was a discussion about the keynote.
The room was filled mainly with freelancers and small company consultants (that is quite typical for a Montreal crowd actually). More than half of those individuals are Microsoft MVP, which was quite an impressive concentration.
The most heated part of the discussion was about Microsoft message around the HTML 5 vs Silverlight. Steve Balmer’s message about Silverlight was… well there was no message, he didn’t explicitly talk about it. Of course, he talked a lot about Windows Phone 7 development, which has to be done in Silverlight, but he didn’t mention the ‘S’ word ;)
What he did talk about though was HTML 5. As I mentioned yesterday, that was one of his key messages: Internet Explorer 9 / HTML 5. That was touted as the “glue between the client and the server”. If you read between the lines, you may interpret that Microsoft is now putting its weight behind HTML 5 instead of Silverlight. If you can read between the lines, you can read it in-the-lines of Bob Muglia, Microsoft President in charge of server and tools business.
This didn’t escape many of the people in the room. One of them actually made himself a Silverllight expert and basically just learned that he was old news. As he said, the problem with Silverlight is that once you’ve tried it, you don’t want to go back to java script!
It’s funny, because another person in the room got the same uneasy feeling when we talked about TFS in Azure. That person is an expert in TFS infrastructure and he just learned… he was old news. Both of those are MVPs, so I guess they felt betrayed on many levels.
But above betrayals, if you’re cutting edge today, where should you go? And where should you advise people to go?
Well… the thing is, I believe the question is still open.
That said, HTML 5 is offering quite a good share of what Silverlight is able to offer to the end-user. The coverage is way broader. But the developer experience is quite something else. Hence the complaints in the room.
Now I can see where Microsoft is coming from. They tied Internet Explorer 9 to the OS (it runs only on Windows Vista and more recent OS) in order to leverage the capacity to use hardware acceleration. That makes IE9 the fastest OS rendering and animating HTML-5. The competition will have trouble to follow them, especially that most of them (e.g. Chrome, Fire Fox) are available on many platforms. So they basically threw a curve at the competition.
A problem with this is that HTML 5 will be standard but the speed won’t. So you’re back to square one: do you want to develop rich application on a platform where the performance highly depends on the browser?
I think the dice have been thrown, but they’re still rolling on the table. For interactive-UI app, Flash & Silverlight will be the way to go for quite a while. But for simpler UI (ie %90 of what you interact with everyday), HTML is back in the game with HTML 5.
A lot of arguments in the room were around the fact that a lot of companies still have IE 6 on their desktop. Well, cutting-edge client computing isn’t happening on your corporate desktop, isn’t it? The winner of the cutting-edge competition today will end-up on your corporate desktop. Microsoft has two horses in the race, hedging their bet.