Feeds

Silverlight 3: closer to what client-side .NET should have been

Microsoft cranks it against Adobe

New hybrid storage solutions

Review Microsoft has released Silverlight 3, less than four months after unveiling the product and just nine months after finalizing Silverlight 2.0. The pace of development is remarkable, reminiscent of the browser wars in the 1990s, with Adobe System's Flash now playing the competitor role.

Why the urgency? It is a fascinating question but for whatever the reasons Microsoft is delivering a vehicle that enables .NET developers to take their code into the browser and cross-platform for Windows, x86 Mac and eventually Linux.

Silverlight is a 5MB browser plug-in, though some controls get downloaded separately on-demand. It does not require the .NET runtime; or more accurately, it includes the .NET runtime, tuned and cut-down for the purpose. This is in contrast to Sun Microsystems' fledgling JavaFX, for example, which is in effect a feature of the Java Runtime Environment (JRE) installed on the desktop.

Microsoft supplies Silverlight for Windows and Intel-based Mac, while the open source Moonlight project is responsible for Linux, though supplemented by media codecs that come directly from Microsoft. Moonlight is still a work in progress. Microsoft's vice president for the .Net developer platform Scott Guthrie says it is "six to nine months behind", though that seems optimistic. Moonlight 2.0, the first version with .NET support, is still in preview.

Dual-player

Silverlight has two roles. First, it is a media client for Microsoft's IIS Media Services, for streaming video. Version 3.0 catches up with the rest of the industry by supporting H.264 video and AAC audio as well as Microsoft's VC-1 and WMA formats. Digital rights management is available, but not yet for H.264 or AAC, which will limit commercial take-up. A strong feature is Smooth Streaming, which varies the bitrate on the fly according to available bandwidth, though this is really a feature of IIS Media Services and works in Silverlight 2.0 as well as 3.0.

The other Silverlight role is as a development platform for Rich Internet Applications (RIAs). You define a user interface in XAML, Microsoft's declarative language, and write code-behind in C# or other .NET languages. Silverlight applications can also interact with the browser DOM. New in Silverlight 3.0 is a navigation framework that lets you map URIs to Silverlight pages, enabling deep linking and browser back-button support.

Interface dsign with Sketchflow

Sketchflow, in the Blend 3 design suite, lets you map and design the Silverlight UI...

Make comments on design in Sketchflow

...while Sketchflow Player lets users run the prototype and add comments

The tools for Silverlight are Visual Studio for coding, and Expression Blend for rich designs. Projects can be round-tripped between Visual Studio and Blend. The current add-in for Visual Studio 2008 has no visual designer. Visual Studio 2010 has proper support, but is currently in beta. For Silverlight 3.0 you need at least beta 2, which is not yet available, while Expression Blend 3 is currently a release candidate.

Blend 3 improves greatly on its predecessor. The two big new features are better Photoshop import, which preserves layers and image elements, and a prototyping feature called SketchFlow. Last year I interviewed Bill Buxton, a design guru who is a principal researcher at Microsoft. He advocates prototyping using sketches, on the grounds that prototypes that look too polished inhibit discussion. His theories are now surfaced in SketchFlow, which is a prototyping tool for Silverlight and Windows Presentation Foundation.

A SketchFlow project starts with a mini site map, where you draw the page flow of the application. You then design the pages, optionally using special "sketch" controls which look home made, and hooking up pages. You can add instant sample data, avoiding the need for a database connection, and add simple interactivity by setting properties.

The next step is to export the project into a SketchFlow package and distribute it for comments. Users can run the prototype in the SketchFlow player, which supports annotation, and return their feedback to the designer. Finally, the designer can export the revised project as a Word document, which includes all the screens ready for working up into a specification. A useful and innovative tool.

Next: behind the scenes

Reducing the cost and complexity of web vulnerability management

More from The Register

next story
New 'Cosmos' browser surfs the net by TXT alone
No data plan? No WiFi? No worries ... except sluggish download speed
'Windows 9' LEAK: Microsoft's playing catchup with Linux
Multiple desktops and live tiles in restored Start button star in new vids
iOS 8 release: WebGL now runs everywhere. Hurrah for 3D graphics!
HTML 5's pretty neat ... when your browser supports it
Mathematica hits the Web
Wolfram embraces the cloud, promies private cloud cut of its number-cruncher
Google extends app refund window to two hours
You now have 120 minutes to finish that game instead of 15
Mozilla shutters Labs, tells nobody it's been dead for five months
Staffer's blog reveals all as projects languish on GitHub
SUSE Linux owner Attachmate gobbled by Micro Focus for $2.3bn
Merger will lead to mainframe and COBOL powerhouse
iOS 8 Healthkit gets a bug SO Apple KILLS it. That's real healthcare!
Not fit for purpose on day of launch, says Cupertino
Profitless Twitter: We're looking to raise $1.5... yes, billion
We'll spend the dosh on transactions, biz stuff 'n' sh*t
prev story

Whitepapers

Secure remote control for conventional and virtual desktops
Balancing user privacy and privileged access, in accordance with compliance frameworks and legislation. Evaluating any potential remote control choice.
WIN a very cool portable ZX Spectrum
Win a one-off portable Spectrum built by legendary hardware hacker Ben Heck
Intelligent flash storage arrays
Tegile Intelligent Storage Arrays with IntelliFlash helps IT boost storage utilization and effciency while delivering unmatched storage savings and performance.
High Performance for All
While HPC is not new, it has traditionally been seen as a specialist area – is it now geared up to meet more mainstream requirements?
Beginner's guide to SSL certificates
De-mystify the technology involved and give you the information you need to make the best decision when considering your online security options.