Developers have been wondering for several months now, especially since the Build conference, if Silverlight has reached the end of the road. Microsoft’s answer to Flash is not as popular, but with penetration of nearly two-thirds on PCs and its status as the primary development environment for Window’s phones, there are plenty of CIOs worried about the fate of plenty of applications. It's not really the end though, just a change to a new style.
The most obvious hint came in April, when Larry Lieberman, a senior product manager at Microsoft, posted this comment on the Windows Phone blog:
We've also heard some developers express concern about the long term future of Silverlight for Windows Phone. Please don’t panic; XAML and C#/VB.NET development in Windows 8 can be viewed as a direct evolution from today’s Silverlight. All of your managed programming skills are transferrable to building applications for Windows 8, and in many cases, much of your code will be transferrable as well.
How's that for a non-answer? But the answer is obvious. Your Silverlight code is portable right over to XAML and C#/VB.NET. Still, to a fair degree, Microsoft is being responsible in not using the D word.
First off, it's not abandoning Silverlight. It is committed to support it until 2021. The company just released a minor upgrade to version 5.1, which is primarily bug fixes.
Second, Microsoft never did officially declare Windows XP dead, did it? Yes it's off the market and no longer supported, but it lives on as Windows 7. All of your XP apps (well most of them) run on Windows 7 and 8. Microsoft has not readily declared XP dead any more than it has Silverlight, nor should it in either case.
OK, so we expect non-answers from politicians, not our software companies. Face it, this is the best we're going to get. But this migration should be relatively painless. Silverlight code is about 90 to 95 percent portable to the WinRT runtime in Windows 8. The rest should be straightforward porting.
One thing Microsoft recommends doing is loading your application into the beta version of Visual Studio 11, its flagship developer tool, and running a compile to see where the errors are. The fixes might be as minor as changing API namespaces.
Another thing that will help is that Expression Blend, the rich application development tool used to create Silverlight and Windows Presentation Foundation (WPF) applications, is also the visual design application for building Metro-style apps. So apps written for Silverlight or WPF in Expression should port right over to Metro.
So CIOs and developers can stop obsessing about will-there-or-won't-there be another Silverlight. Microsoft is providing the tools to make migration and reuse of the code as painless as it can.