Microsoft's Silverlight 4 - Flash developers need not apply
The dark side of .NET improvements
Review Microsoft's Silverlight 4 shows remarkable progress since version 3, released in July. The pace of development shows Microsoft is serious about making this work - but is it delivering something developers can use?
The answer is a guarded "yes". Version 4 is a huge improvement, resolving many of the most frustrating aspects of its predecessor, though there are still reasons for caution.
There are three broad groups of customers Microsoft hopes to capture with Silverlight. The first is internet broadcasters, where the company has had limited success so far. In the USA, Major League Baseball reverted to Adobe Systems' Flash after a brief dalliance with Silverlight, and in the UK ITV also dropped Silverlight after using it for its ITV player.
Flash is hard to shift, with greater penetration in web browsers, much better device support, and a strong industry alliance in the form of its Open Screen Project. Silverlight 4 adds DRM for H.264 content, along with offline DRM, but success here is more about establishing partnerships and getting the runtime deployed than it is about adding features.
The second group is web designers. This also is challenging for Microsoft. Many designers work on the Mac, whereas the Silverlight design tool, Expression Blend, works only on Windows. Further, Flash is already present on over 95 per cent of web browsers, where Silverlight can only muster around 45 per cent according to Riastats.com - though that figure took a lurch upward last month, partly thanks to an increased sample size.
A right-click brings a Silverlight form from Visual Studio into design-tool Expression Blend
The third group is developers, especially those already familiar with Microsoft .NET and Visual Studio. This is where Silverlight 4 shines, and also where the company has given the product most attention. Silverlight 4 is part of the new .NET product wave, which includes .NET Framework 4 as well as Visual Studio 2010.
Visual-Studio thumbs up
This is the first Visual Studio with full Silverlight support, including a two-way visual designer and a variety of Silverlight project types. Microsoft has done a great job here, and working with Silverlight is smooth, especially when compared to the pain of earlier iterations. There are some important new controls, including a Rich Text control and an HTML control when working out of the browser, as well as limited clipboard support and access to cameras and microphones.
Setting up for the Silverlight beta involves three main components. First, you need a sacrificial machine or virtual machine. Install Visual Studio 2010, currently at Beta 2, and then the Silverlight 4 tools, which includes the runtime and SDK as well as the Visual Studio integration. Finally, you can add Expression Blend Preview for .NET 4.0. Visual Studio has a forms-oriented visual designer, whereas Expression is a rich design tool. I had to fiddle with the registry to get this working, but once set up you can open a Silverlight page in Expression directly from a right-click in Visual Studio, work on it there, and save it back.