I attended the Microsoft MIX11 Conference in Las Vegas a couple weeks ago and, as usual, sat in the two keynote addresses eagerly waiting big announcements and cool demos. Sitting with my buddy Richard Campbell of .NET Rocks!, in the minutes before the first keynote I jokingly said, "I sure hope we have a little Silverlight 5 goodness in this keynote tsunami of HTML5." He replied saying something like, "Silverlight is the future; but the future is not Silverlight… it's HTML5." We laughed—but little did we know that, when all was said and done in this first-day keynote from Dean Hachamovitch, Microsoft corporate VP in charge of Internet Explorer, how eerily poignant those statements were.
Don't get me wrong, I'm very excited about the HTML5 thing. It is just that:
- We are so far away from the power and ease of use in the tools and beautiful plumbing we have in Silverlight.
- Because of the buzz... er... HTML5 hysteria for the next year or so, until HTML5 becomes "real" we are going to painfully have to explain the trade-offs, use cases, and scenarios where Silverlight and HTML5 applications live and don't live from a solution architecture perspective.
Yet, I heard a few resonating quotes from Dean Hachamovitch in the keynote that caught my attention:
"HTML5: native to Windows." Now, didn't this VP—or perhaps another—say essentially the exact same thing in a different way at the MIX conference in 2007 before the Windows Vista Launch: "XAML: native to Windows"? Well, it might not have been that conference, but it was one of them. And Avalon, as it was called, was going to be one of the Four Pillars of Windows Vista. It was going to be a completely extensible and programmable Windows desktop built in XAML. There were even demos in early prototype form. I remember being pretty excited about building XAML-based applications (WPF) that actually "lived" in the desktop. Unfortunately it never happened. So, if in fact Windows 8 is going to be skinned/built in HTML5, then—cool; sounds awesome. God only knows why that wouldn't be done in XAML, but still it's cool. However, I'm skeptical because I have heard this tune before.
"Native implementations are just better." Hey, now. That's exactly the opposite of what was said at numerous Microsoft keynotes over the last three years. In fact, we heard loud and clear that runtimes, as opposed to native implementations, were just better. Better, for numerous reasons, not the least of which is that runtimes like Silverlight are cross platform. That is what we were told.
And now I'm sitting in the audience watching native HTML5 applications built for the IE9 browser that are talking directly to the GPU and getting awesome vector graphics and performance, and I'm watching the Microsoft execs do some Google Chrome bashing—and I'm thinking to myself, "Oh my God, we are on a 'back to the future' collision course set for 1998." Back to when our web applications were basically built three different ways to accommodate the three major browsers of the late 90s. "He is not going to say it, is he? Oh my God, he did":
"Browsers that optimize for modern operating systems give better experiences." Translation: "You can only do this cool stuff in IE on Windows Vista or later."
Now, I know Microsoft is a public company in the business of profitability. I understand that. I respect that. And they are quite good at profitability. Microsoft is the number-two most profitable company in the world surrounded by Exxon, number one and Wal-Mart, number three. But, I wondered if the majority of the audience watching live and on the Internet understood the implications of that statement and of that HTML5 implementation. The implication, simply said, is that all that cool HTML5 stuff is Microsoft-only HTML5 stuff—stuff that only runs in Internet Explorer 9+ in Windows. And not just in any old Windows; only in modern versions of Windows. So, if you are building a website or application, only the IE9s+ on Windows Vista+ will see the cool stuff, and you'll have to build at least two other HTML versions of your site/application to accommodate the other browsers… which undoubtedly are going to have their own cool stuff that only run on their browsers.
Maybe I'm getting old (I am), but I'm dreading the next four to five years or so for this whole thing to shake out into some type of parity and standards. That's how long it took in the late 90s. And it most certainly seems like we are headed for that same era of pain again. I worked on an Internet server product team at Microsoft in the late 90s. It was painful. I cannot believe we are doing this again. The software industry brings new meaning to the word recalcitrant.
Take a look at the full MIX11 keynote, recorded on April 12, 2011, and let me know what you think.
Tim Huckaby ( [email protected]) is founder and chairman of InterKnowlogy—experts in Microsoft .NET and Microsoft platforms—and chairman and founder of Actus Interactive Software, a product company focusing on interactive kiosk and active digital signage. Tim has worked on and with product teams at Microsoft for 25+ years, has authored books and several publications, and is a frequent conference speaker.