Silverlight multi-platform support is falling apart.

Posted on Wednesday, November 25, 2009 by Erlik

I had previously pointed out that the lack of supported platforms was a serious problem for Silverlight, especially when compared to Flash. The root of the problem was that Moonlight, the Linux version of Silverlight, is usually at least one release behind the Windows and mac versions of Silverlight. This caused confusion for developers as it was not clear which features would work on Linux. Rather than working to fix the problem it seems that Microsoft is making it worse by introducing Windows only features in Silverlight 4.

The need for COM

One of the most widely used api in Windows is COM. With it you can access almost anything on a Windows machine and that makes it a very powerful tool for developers. The problem is that it is a technology that only exists on Windows and that you can't easily retrofit it in OSX or Linux. Here comes a choice for Microsoft: either they give Silverlight developers access to COM, which will strongly increase the usefulness of Silverlight on Windows but will fragment the Silverlight market even more, or they don't and try to unify their supported base to compete with Flash. They choose the first option.

Silverlight gives the multi-platform market to flash

What I get from this decision is that the objectives Microsoft had with Silverlight have changed. It looks like competing with flash in the wider, multi-platform market is taking a back seat to the introduction of new functionality. What Microsoft is pushing is Silverlight as the default web based development platform for Windows, with some limited compatibility with non Windows platforms. This goes in the opposite direction to Adobe Flash which seems to favor a consistent set of functionality and compatibility across all platforms. Flash is not only available on Windows, Mac and Linux, but also on the Wii, and soon an ARM version should be released for smartbooks. And that does not even cover gnash, the open source version of flash that is more or less to Flash what Moonlight is to Silverlight. In short, Microsoft is giving up the multi-platform market to Adobe.

The impact for the developers

With many Linux based web devices based on ChromeOS in the works for next year and OSX market share on the rise, choosing Silverlight as a web development platform need to be carefully considered. The developer needs to be fully aware that some Silverlight 4 functionality will not be available if cross platform support is required (and on the web it is almost always required). If Linux support is to be assured the situation is even worse, as targeting anything above Silverlight 2 level could possibly break compatibility with Moonlight until late next year. This makes Adobe Flash the safer choice for Web development.

Is Silverlight COM support useless?

There are however cases where the COM support in Silverlight 4 will be useful: for enterprise development. If your company is a Windows shop you can use Silverlight 4 to develop very powerful web applications that run straight from the company intranet. You need of course to be sure that the application will not have to be made available to external customers that may use other clients. In these 'intranet' scenarios the addition of COM to Silverlight 4 is clearly a benefit and is indicative of the will of Microsoft to reposition Silverlight as an "enterprise" technology as well as a "web" technology.

Technorati Delicious StumbleUpon Reddit BlinkList Mixx Facebook Google Bookmark newsvine live slashdot Submit to OSNews

8 Responses to "Silverlight multi-platform support is falling apart.":

Anonymous says:

So Microsoft add a feature and suddenly cross platform support is over??? If you're going to post an argument make sure you have solid backing as this post just sounds like someone who 1. doesn't understand product development and 2. hasn't used Silverlight and 3. has a negative biase to anything Microsoft.

Unknown says:

Making COM available for Silverlight application could be a new security issue. Malware developers will be happy to have access to all Windows resources and will use it to implant their malware. What will Microsoft do to stop them?

Anonymous says:

To anonymous #1:

This is nothing more than a blatant spin on classic EEE behavior. First Microsoft offers a cross platform tool. Then they have some "secret sauce" version that works only in Windows. A bunch of "the sun rises and sets on Visual Studio" developers use the secret sauce. Everyone else is out in the cold.

You sound like someone that's 1) Never used another platform, 2) Doesn't learn from history, and 3) Has a positive bias towards Microsoft.

Anonymous says:

I agree with .. well.. "anonymous". This is classic Microsoft behavior. They offer a product, get everyone hooked then start deviating from the standard in such a way that makes using a non-Windows platform is buggy at best and difficult for the rest.

The irony is that I work in a Windows shop. I support Microsoft because their platform is so full of holes and so unstable that I have managed to pay for my college education, 4 houses, several cars and a six figure bank account balance on the backs of companies who continue to use their products. Using Silverlight, even in an enterprise, simply paints companies further into a corner when it comes to Microsoft licensing fees and higher salaries for IT workers. I think this is a great solution for everyone involved.

-signed a linux family
Microsoft MCTS SQL 2005, MCSA, MCSE, MCDBA, Cisco CCNA, .NET+, A+, Security+, Dell Certified

lsw says:

Hopefully progress with open source HTML5 standards will make flash and silverlight both irrelevant

Anonymous says:

I don't understand why anyone would touch silverlight. Isn't this just ActiveX 2.0? I would have major questions over the security of this product.

David Gerard says:

The strange thing about this example of Embrace and Extend is that usually, you first have to have people actually use your platform ...

Does anyone develop in Silverlight who isn't already a MS platform specialist?

Pravesh Singh says:

Check this helpful link too.
http://mindstick.com/Interview/390/Which%20plateform%20does%20silverlight%20support