Search

Thursday, April 4, 2013

Is Silverlight development dead? Far from it!

Silverlight started out as a boutique development toolkit that originally only supported JavaScript with vector based graphics.  It was Microsoft’s attempt at stemming the Adobe Flash tide that was sweeping the web world. 

Originally launched in 2007, it was Microsoft’s first foray into a platform independent software application.  Soon it grew in popularity and over the course of the next 5 years, reached approximately 2/3 market penetration of internet users.  With support for various browsers and the Mono implementation on Linux, Silverlight expanded its reach further into the world of computers more than any other MS tech. 

During this time, the use of smart phones and ultimately tablets took a major foothold in the market.  Battery life and enabling these devices to work through a day without a charge became a struggle.  Plug-in based controls like Silverlight and Flash became taboo.  They consumed a lot of CPU resources and thus reduced battery life. 

I won’t pretend to be an expert on the subject, but something tells me that software running in a plug-in environment can’t possibly be worse than HTML5 canvas or OGG video.  Open your browser, go to your favorite website and see the memory footprint of your browser.  I bet it’s over 100 MB.  So much for thin client applications…

As I digress, Silverlight 5 appeared to be the last version of this really compelling software stack.  Silverlight 6 still hasn’t shown up in any MS document or road map and most likely it won’t.  Windows 8 ‘Metro’ IE browser doesn’t support it.  Mainly because it’s 64-bit and Silverlight was never ported to be run in a 64-bit browser.  Interestingly, Microsoft just extended support for Flash in the Metro browser in a recent update.

I’ve written, implemented and brought to market over a decade’s worth of web applications.  I’ve used many of the innovative technologies under the sun.  I’ve seen the future with HTML5, CSS and JavaScript and let me tell you it isn’t as rosy as people make it out to be. 

Building business applications can be very tedious and the performance can be horrible.  Like its predecessors, HTML5 lacks standard controls (data grid anyone) and use of real object-oriented programming is missing in this new wave of programming.  Even using the venerable MVC development pattern is taking 5 steps back compared to MVVM. 

Sure you have portability across iPhone, Android, tablets, WinPh8 and so on.  What you gain in flexibility you lose in programming speed and features.  Sure you can build anything you want and given the amount of time it takes it may not end up being that feasible.  I’m not convinced that HTML5 is the answer.  With no Silverlight 6 coming, it appears that this dynamic, rich development toolkit will go the way of the dinosaurs. 

Well not so fast.  You see Silverlight happens to be the primary technology used in Windows Phone 8.  In fact, ‘Metro’ based applications leverages Silverlight like technologies in a hybrid WPF kind of way.  Microsoft hasn’t given up on this amazing technology, they’ve adapted it.  They are using it to meet new and emerging needs.  In areas that could really use it. 

While I’d love to see Silverlight 6 come to market and be supported in Windows 8 Blue and on the iPad.  In lieu of that, I’m confident that this amazing technology stack will continue to evolve and meet new and challenging needs going forward.

No comments:

Post a Comment