Silverlight made its debut in 2006 with the confusing acronym WPF/E (that’s Windows Presentation Foundation, Everywhere). Indeed the original dream was that a slimmed down version of the .NET Framework could run as a plugin in any browser (including smart phones) and enable developers to wield their weapons of XAML, data-binding, and C# to write line of business apps that would run everywhere. Although it took a few versions to mature, in May of 2011 version 5.0 was released with the features most requested by enterprise users. That was also the year I wrapped up my book about building business applications with Silverlight, titled Designing Silverlight Business Applications (Addison-Wesley, 2012).
In the forward of that book I discussed how the refusal of certain vendors to include the plugin on their smartphones didn’t necessarily mean the demise of Silverlight, but would relegate it to the domain of rich enterprise business applications. HTML5 was still f
ragmented and JavaScript was a very difficult language to scale across large teams and maintain on enterprise projects. Later that year when Microsoft announced their plans for the upcoming Windows 8 operating system, developers around the world took notice of two things: the heavy emphasis on apps written with HTML5 and JavaScript, and the lack of any mention of Silverlight. That was the final nail in Silverlight’s coffin.
At the time I was adamant that Silverlight could still be useful. In hindsight it was mainly due to my frustration with the poor tooling available for building HTML5-based applications. C# and XAML were mature platforms that I could successfully use to scale developers and teams between design and development. I helped author a mobile device management platform that was web-based and switching to Silverlight afforded us about a four times boost in productivity. That’ right – compared to wrestling with cross-browser compatibility and living in AJAX land, Silverlight enabled us to take a concept and bring it to fruition in a quarter of the time. Why on earth would I want to let that go?
This is one of the mistakes I’m glad I made. I thought that HTML5 would remain fragmented and we’d be faced with islands of functionality across various browsers, and that Silverlight would remain a viable line of business solution. It turns out that browsers evolved faster than anyone imagined and Internet Explorer was forced to iterate at a much faster pace. At the same time, tools began to evolve to provide structure in client apps like Backbone while other libraries including Ember, Knockout, and Angular brought data-binding and dependency injection to JavaScript’s Wild West. Coupled with languages like CoffeeScript and TypeScript to provide structure and developer relief, enterprise web development is suddenly very viable with HTML5 and JavaScript. The fact that all modern smart phone browsers faithfully render HTML5 and JavaScript makes the story even more compelling.
I had the opportunity to work on a massive project converting millions of lines of legacy code to a modern enterprise web app delivered across multiple browsers and devices using HTML5 and JavaScript. For the first time in a decade I was able to see a team of dozens of developers distributed around the globe successfully build an enterprise project in parallel using tools like TypeScript and Angular on the client. Coupled with Scalable Vector Graphics (SVG) we were able to build the same rich client solutions that were possible in the Silverlight days with almost the same level of productivity. I was absolutely amazed and delighted to see what is possible today and am just as thrilled to share much of what we learned with you.
My colleague Noel Steiglitz gathered all of the experience and information Wintellect gathered while migrating our customers from Silverlight to modern platforms (both desktop and browser-based) and packaged it in a whitepaper that anyone looking to migrate from Silverlight needs to read. It covers the challenges of migrating to modern platforms and how to determine which platform makes the most sense given the application requirements, whether the target is desktop, Windows 8, or web. He discusses challenges like touch integration and deployment options. There’s a lot more to it but the best part is that it is completely free so I encourage you to visit the download page and grab your copy today. Don’t hesitate to receive your in-depth look at <a href=”https://training.atmosera.com/silverlight-update-xaml-html5?sr
c=jrlblog”>Silverlight Migration Strategies!