Microsoft seems to have come up with one of the greatest technologies of recent times. A technology that would change the way websites looked and performed. Far more powerful than HTML5 or Flash.  With capabilities that HTML5 can only dream of coming close to (without years and years of additional toolkit development).

What does a technology leader do when they come up with the idea of the decade? One that would revolutionize the way people develop web applications?

Abandon it of course. Why did Microsoft consider this, of all its  myriad of products, as not worth supporting? Partly because they saw HTML5 as becoming the new ‘web UI’ standard. And perhaps felt that they were fighting a losing battle. Except that it wasn’t !

Not only was (is) Silverlight way more advanced (and richer in capabilities) than HTML5 and Flash, it is richer without requiring intensive lines of code.  This post will try and explain (to Microsoft – who shouldn’t need explaining to), why Silverlight support is sorely needed.

Microsoft has been accused of lagging – rather than leading revolutions (especially when it comes to web technologies). Internet Explorer appeared way too late and  (after 11 releases) is still not even in the top 3 browsers in terms of performance and usability (Chrome, Firefox and Safari win over it in all metrics – memory footprint, speed of page loads, search shortcuts etc.)

For once, they actually were set to be the leader in something. And something big. Something that would change the way websites looked and felt for the next decade. What is possible to build with a Silverlight website is the stuff of dreams.

HTML5 versus Silverlight

I would like to see HTML5 come close to the full runtime capabilities of the .net platform ( which is what the silverlight plugin provides ). Multithreading, asynchronous page loads ( and web service calls), http and non-http bindings to external services – all with a few lines of code and some configuration files. I’m not even going to touch on the streaming capabilities of silverlight or the auto resizing , auto scaling, auto aligning – features of Silverlight controls. Try building an HTML5 app with controls that correctly resize as you switch from single to dual monitors.
Yes -with proper toolkits, possibly HTML5 will do some of those things in the future. Silverlight already does. It’s like having all the requisite toolkits in one, very small footprint browser plugin.

Adobe Flash versus Silverlight

Flash is the current industry leader in rich content browser plugins. Their platform does take web development to a new level. Which is why the entire world jumped on to it. Flash changed the way websites looked after years of boring HTML pages.

Silverlight was all set to do the same thing. Take web look and feel to a whole new level. But more than look and feel, it would do something that Flash could not come even close to. By including all the runtime capabilities of (the already mature) .NET platform, Silverlight would offer unprecedented coding possibilities for web applications. Things that were hitherto difficult (if not impossible to do) – would all be available out of the box to Silverlight programmers. Asynchronous web page capabilities, multi threading – allowing for super responsive UI controls,  WCF capabilities of talking to any type of external service – whether WS* compliant or not – whether HTTP based or not. All of this with the least amount of lines of code – and some configuration files.

To build an equally capable website in Flash would require far more code – and would still not have all the capabilities that are built into Silverlight.

Prototyping Tools based on Silverlight (and WPF)

Expression Blend and SketchFlow offered a super interactive (and awesome looking) prototyping experience. Not only could a developer throw together a web page’s interaction (button clicks, menu navigation etc.) quickly, a customer could interact with the exact same prototype and add his/her comments and feedback. All this in real-time.

And all with spiffy looking web controls. Perhaps the greatest advantage to prototyping with these tools is that one can actually use most of the prototype screens to begin development. Unlike most prototyping tools, SketchFlow uses actual WPF and Silverlight controls. While Microsoft has still not officially abandoned SketchFlow and Expression Blend, they seem to be offering ‘works on this OS and this type of product only’ releases. Expression Blend  can only be used to Windows 8 store apps. Once again, these are no ordinary tools – they would have marked a new era in prototyping tools – with super look and feel – as well as unsurpassed user-interaction capabilities. One can only hope that these tools are not completely abandoned by Microsoft.

Summary

I am too bummed out to write a conclusion on the death of Silverlight. Microsoft is clearly showing signs of brain fog (skewed, cloudy decision making). First, with the purchase of SKYPE (all they got for $8 billion was an additional installation screen asking if you would like to install skype on your windows box).  Instead of revolutionizing the look and feel of tomorrow’s web applications, Microsoft is choosing to let HTML5 accept that exciting leadership role.

Anuj holds professional certifications in Google Cloud, AWS as well as certifications in Docker and App Performance Tools such as New Relic. He specializes in Cloud Security, Data Encryption and Container Technologies.

Initial Consultation

Anuj Varma – who has written posts on Anuj Varma, Hands-On Technology Architect, Clean Air Activist.