This article is more than 1 year old

Microsoft polishes the Silverlight

Still to prove itself against Flash

MIX07 Despite the early batch of criticism that Microsoft’s Silverlight has already generated, there is still much to interest applications developers in its arrival as a beta product, as well as issues for them to ponder, not least being whether Flash is still the better option for now.

The key interest, particularly in Microsoft’s world, is that the Common Language Runtime (CLR) is going cross-platform. That is the big news at Microsoft’s Mix07 conference, where delegates have seen demos of .NET code running on both Windows and the Mac, hosted in a future version of Silverlight, the video streaming browser plug-in now in beta.

Silverlight 1.0, which relies on JavaScript in the browser, is set for full release in the summer. No date has been announced for Silverlight 1.1, however, and this will include the CLR, though an alpha version is available for download. It will make Silverlight a viable alternative to Adobe’s Flash for rich browser-hosted applications.

The announcement itself is no surprise, but many of the details are new and worth considering from the developer point of view. For example, cross-platform in this context means Windows, Mac, and in due course Windows Mobile. Microsoft appears uninterested in Linux, though program manager Keith Smith told me “there is nothing to preclude it.” There is talk of supporting other mobile platforms such as Symbian in future.

The CLR will be the same as that used for the full version of .NET, including JIT (Just-in-time) compilation to native code, though only a small portion of the .NET Framework class library will be included. The cut-down library will support XML web services, language integrated query (LINQ), and a set of user interface controls. Developers will use Visual Studio combined with the Expression tools to design graphics and write code in Visual Basic or C#. The graphics will be exported to XAML, while the code gets compiled to .NET byte code for execution on the client. Silverlight will also include a dynamic language runtime layer, for JavaScript, Python, dynamic Visual Basic, and eventually Ruby.

According to Smith, the Silverlight-hosted CLR will have no access to local storage beyond what the browser chooses to cache, and will be sandboxed to disallow invocation of native platform APIs. Silverlight runs only in the browser, so there is no cross-platform equivalent to Adobe’s Apollo, which uses the Flash runtime for desktop applications.

Microsoft is so keen to see Silverlight used that it will host the content for free. Silverlight streaming is a “companion service” that streams media content from Microsoft’s servers, supported by its global content delivery network. The free service allows videos up to 10 minutes long, in qualities up to a DVD-like 700 Kbps, occupying up to 4GB of total space, and serving up to one million minutes per month. Beyond that, there will a fee-based or advertising-supported service.

Silverlight cannot succeed on bribery alone, however. Its strong points are high quality video, and smooth integration between design and development tools in Expression and Visual Studio. Existing .NET developers will get an easy route to browser-hosted cross platform applications. That said, Silverlight 1.1 with CLR support is only in alpha, implying a lengthy wait before full release.

Adobe is ahead with its Flash runtime, which already has JIT compilation and a version of Javascript that is nearly as powerful as C#. Microsoft will also struggle to win over designers currently wedded to Adobe’s tools and in many cases running them on the Mac rather than Windows. Still, the quality of the demonstrations here at Mix shows that there is now real competition in this space. ®

More about

TIP US OFF

Send us news


Other stories you might like