Silverlight 1.0 and Moonlight

Microsoft has released Silverlight 1.0, the company's intended Flash-killer, and has announced that it will be working with Novell to provide support for the open source, Mono-based implementation, Moonlight.

Overall, I think this is a fantastic development for the open source community. Microsoft has basically pledged to support the Novell developers by providing test suites and the like so that complete compatibility can be (almost) guaranteed. This would mean that application written for Silverlight on Windows or Mac would run just as well in Linux or any platform supported by Mono and Moonlight. Microsoft has also said they will provide, for free, binaries such as video and audio codecs that will be capable of plugging in to Moonlight. I thought this was obvious if Moonlight is a perfect clone of Silverlight but I guess that means they won't try to place some sort of

WGA crap in the way.

One thing that could potentially be very positive about this development is that it is going to put a good deal of pressure on Adobe to make Flash more open. Currently Adobe provides Flash binaries for Linux but these sometimes lag behind the Windows and Mac versions, there is no (native) 64-bit version available and the binaries are protected by a license agreement that prohibits them being bundled with distributions. Moonlight, on the other hand, has no such restrictions, should support any platforms (64-bit or otherwise) that Mono does and the development team has already done an incredible job of keeping up with Silverlight development – even before it was officially released! Currently only Firefox is supported but other browsers should be on their way. If Adobe wants to keep hold of the "rich internet media" market then they're going to make some compromises with the open source community (especially Linux users).

The other area that Adobe might be feeling some heat is with their upcoming AIR runtime. The promise of AIR is significant but there is a fundamental problem that it relies on proprietary Adobe runtimes so true cross-platform support is unlikely and it is doubtful that Linux distributions will be able to include the runtimes as part of their base systems, which I think somewhat limits the possibilities. The Moonlight team have already said that they would like to allow desktop applications to be built with the software. Moonlight will, most likely, lack any ability to create applications with HTML & JavaScript (as AIR does) but this might not be that important in the long run.

Of course, where one sees potential for greater openness by the big players in the market, others may see a strategic move by Microsoft, which is the first step in another "embrace and extend" campaign. Basically, they could push Adobe out of the market by killing Flash and, when this has been achieved, they can start adding "Genuine Microsoft Silverlight"-only extensions and tools which pushes users and developers to Microsoft's platforms, where they can increase the amount of vendor lock in. Personally I don't think this is the case right now but I don't doubt that the company would be willing to take advantage of such a situation if it starts to arise (who wouldn't?).

I would like to start exploring this new technology further once Moonlight and its development tools have progressed a bit further. Anything that can bring a richer internet experience to everyone, no matter what platform they use, is a good thing in my book. I'm a bit worried that all this might depend on using .Net software on the server or something so further research is definitely needed.