In a world where the web is striving for standards and platform neutrality, things like Silverlight seem to make very little sense. Adobe's Flash is somewhat understandable in this context because it has become a de-facto standard - but that doesn't go for Silverlight. How does Microsoft intend to position Silverlight in the world of ever more capable standards, such as HTML 5?
"The thing we want to be careful of is, we're not trying to say Silverlight is an alternative standardization to HTML 5, and that part of the Web," Muglia told BetaNews, "We're not saying, 'Hey, you should use this instead of that'. We're trying to provide people with an environment that has capabilities that you just simply can't do today in the standards-based world."
Ozzie further explained that Silverlight is the most logical choice for developers experienced in developing C#. "When I'm thinking of Silverlight, I'm thinking a lot in terms of skills leverage for the people who have learned how to program, how to build things in C#, who have built-up assets," Ozzie explained, "And it is the most seamless transition for people like that to build to things in the browser and build things that are hybrid, between the browser and the service."
"Our perspective on this is very simple: the standards-based world will advance, and continue to do more and more, and applications will be delivered in that way, and that's a critical thing," Muglia said, "There will always be opportunities for people to build applications that take advantage of characteristics that go beyond what the standards do, and that's what we're trying to do with Silverlight."
This is all nice and dandy, but it doesn't explain that version 4 of Silverlight has platform-specific features. For instance, the out-of-browser functionality of Silverlight now has an HTML control, but this control is tied to Internet Explorer on Windows, and Safari on the Mac. To make matters worse, Silverlight 4 now also has a Component Object Model (COM) automation feature, which is tied completely to Windows because Mac OS X doesn't offer a similar feature.
Ars asked Microsoft what was up with this, and received an explanation. "In Silverlight 4 we addressed over 8,000 customer feature requests," a Microsoft spokesperson told Ars, "One specific request was adding support for accessing COM components, enabling common enterprise scenarios such as automating Microsoft Office and providing developers easy access to hardware capabilities such as scanners and security card readers."
"Unfortunately, the Mac offers no support for COM interfaces and we're actively evaluating options to get COM-like features on the Mac," the Microsoft spokesperson said, "Some of our current efforts to provide full cross-platform support include actively evaluating the best way to get COM-like features on other platforms and thinking around the concept of extensions, as well as working closely with the Moonlight team to deliver more features to Linux users."
Despite Microsoft's efforts, I think Silverlight will remain a hard sell - which is sad in a cruel way because at least on Windows, Silverlight is a lot more efficient than Flash (i.e., it uses less system resources while doing its thing). I dislike both Flash and Silverlight, but at least Silverlight plug-ins don't bring my quad-core to a screeching halt.
In the end though, the rising popularity of HTML5 will usurp a lot of the traditional use-cases for Flash and Silverlight, and this can only be seen as a good thing.