Silverlight – what IS cool about it?

Forget the misleading flashy 3D-portaying video at microsoft.com/silverlight for a second; ignore the fact that this puppy has not yet been released yet; pretend that lack of A/V live capture is not an important feature; overlook the 4MB download… what balances this out – what makes it really cool?

Windows Presentation Foundation is the very designer-friendly set of classes and runtime (developed against using XAML directly or through Expression and Visual Studio Orcas) that enables rich UI experiences. It is available for Windows XP, Windows Server 2003 and is included with Windows Vista, as part of .NET 3.0. At the risk of breaking the benefits of consitent UI investments, it can be used to build extremely compelling applications.

A subset of WPF, first known as WPF/e, makes up the rendering engine of Silverlight. The Silverlight runtime includes not only this subset of the runtime, but also the runtime to play back Windows Media content (on-demand or live). This runtime is ~1MB, so far.

XAML can define animations and behaviours that need no coding. In the 1.0 release, you can write javascript against the runtime-instantiated object model to provide a rich interactive experience.

The Silverlight runtime works in IE & Firebox on Windows, but also in Safari on the Mac! In a later release, it will also work in Windows Mobile and possibly Symbian devices.

At this point you have Flash (more or less) but with the whole weight of the Microsoft development eco-system behind you. Most notably, Microsoft has released a set of Graphic Designer tools under the Expression brand that allow you to design vector/bitmap graphics, design the interactive experience, design the web site and manage and prepare the audio/video media. Expression Web and Blend (web and UI tools) are included in various MSDN subscriptions. It’s not clear if Microsoft Partner will get it for free. The full Expression Studio (with all 4 tools) is priced at US$599 at retail which isn’t bad. The Media Encoder is a tag-along-later free download for preparing audio and video.

The next version of Visual Studio (codenamed “Orcas”) will include native support for Silverlight projects.

Microsoft is providing a free (up to 4GB) hosting service in Silverlight Streaming to people can get their content out there using this new platform. This is a smart move for sure.

That’s a lot of WOW – perhaps more flashy of a UI than Vista presents even.

If that’s not enough, then Microsoft has a 1.1 version of Silverlight (which probably should be 2.0) that will allow .NET programming against the runtime, instead of JavaScript, along with full project support in Visual Studio Orcas. This is a subset of the .NET 3.0 framework – a very small subset focusing on the CLR core, networking, UI. This brings rich smart application right into your browser that can be authored by ALL .NET developers with most of their existing skills along side graphic designers using the complimentary set of tools in the Expression range. That’s a lot of industry weight!

(UPDATE: As Yuvi pointed out, it will be a subset of .NET 3.5 by then, rather than .NET 3.0)

A .NET developer can create rich experience on the Web without writing any HTML! He/she can practically be a Mac developer by running a Windows-like smart/rich-client application inside a browser on a Mac!

Microsoft also has an open-source initiative for a Dynamic Language Runtime to allow other languages like Ruby and Python to be used instead of the mainstay C# and VB.NET.

They are also including LINQ in the .NET subset to allow some cool data query syntax in the coding.

Being able to access Web Services from Silverlight combines the best of rich UI with powerful backend services.

With the addition of the full Silverlight product (1.1) you can now do .NET development on the windows desktop, on the windows server, on windows and other mobile devices (compact framework and Silverlight .net runtime), on the mac (and other platforms that may be supported later).

It’s not revolutionary, the tools are lagging behind the runtime, the runtimes are still in beta… and the “web 2.0” and consumer web space is very busy (flickr, youtube, etc.), so it will be interesting to see if clear killer apps can emerge.

See the details a the regular Silverlight site, the community site and the Expression site.

Does Microsoft have the right Mix?

Mix 07, Microsoft’s web dev conference is coming up very shortly but for some this is too little too late.

AJAX.NET was just released in January – a little bit late really.

Microsoft has delivered a ton of stuff recently – probably too much all at once – trying to get developers to get behind Vista, Office and Exchange 2007. I also think that Microsoft’s huge gap of wow and even anti-wow (WinFS what?) has left despondant loyal developers to watch all the cool web 2.0 mashup juice float by and wonder why their software-king has not been there fore them. I think they are really neglecting the grassroots or enthusiast developer.

Where’s the full push for live clipboard Ray Ozzie? Where’s the Amazon S3-like storage solution? Where’s the Live ID Relying Party Suite? Where are the Live ID CardSpace cards (and the CardSpace documentation is awful)? Where is the finished WPF/E? Where are the XPS-supporting printers? Perhaps Ray will wow everyone at Mix 07 but the silence is not building loyalty. Right now Microsoft needs to provide released SDKs, services (and no US$10,000s for Live ID integration), tools, etc.

Microsoft has the wrong Mix, because it should have been last year’s Mix for announcing all the cool things (and in contrete form) that will hopefully be released (and not in beta) this year.

Microsoft is behind on the web – OK their priorities are with Windows, Office, etc. – but if they fall behind on the offline app to as Mack is talking about, then life is not good.

Perhaps I’ll be saying “wow” after Mix 07, but I do think I’ll be amongst a decreasing number of people that still care.