# Tuesday, July 5, 2011

A few weeks ago I was in the Telerik cafeteria at our world headquarters in Sofia, Bulgaria, and a colleague walked up to me and asked: "Is Silverlight dead?" I replied: "No, but it has seen better days."

Since Silverlight's absence from last year's Professional Developers Conference (PDC) in Redmond, WA, the infamous "our strategy has shifted" comment made by Microsoft Server and Tools Division President Bob Muglia, Scott Guthrie's move out of DevDiv, and the recent reorg of the XAML team, the community has been in an uproar assuming that Silverlight is dead. So the community has voted, Silverlight is dead and HTML5+JavaScript is the future.

First a few words on HTML5 + JavaScript

Many people in the IT industry assume that HTML5+JS is the future of software development. While it would be easy to say HTML5+JS is the absolute future of software development, HTML5+JS still has its limits coming from its roots as a rendering platform with some scripting, communication attached. While I feel HTML5/JS will be huge and have a place in every developer’s toolkit (just as HTML4+JS (AJAX) does), to build true LOB applications, you will need more power, just as you do today.

HTML5+JS is finding its sweet spot with media, interactive content apps on the web (think Google Maps) and cross platform apps for mobile devices. While Microsoft is fully embracing HTML5+JS, I can never see them making it their main development strategy; Microsoft would never cede its development strategy to a standards body or a 3rd party. Realizing this, Microsoft is going to have a development platform that embraces and extends HTML5+JS, just like .NET/ASP embraced and extended HTML5+AJAX.

I think that all of the recent focus on HTML5+JS by Microsoft is to hook the non-Microsoft developers who know nothing about Silverlight or .NET on the Windows 8 Tablet and get them building apps to compete against Android and iOS. I believe that what will evolve is that for the developer ecosystem is that HTML5+JS will primarily be used for building "apps" on the Tablet, but not for "real" line of business applications on the Web, “native” Windows, and XBox. 

Is Silverlight Dead?

I will admit, when Steven Sinofsky and Co were showing off the new Windows 8 operating system and all of the HTML5+JavaScript developer hooks, I was tempted to join in the "Silverlight is dead" chorus. After some deep thought, I realized that rather than killing off Silverlight, Microsoft may have something else in store for us. If you read in-between the lines and take with a grain of salt what the blogs say, it is possible to draw some conclusions about the future of XAML and Silverlight. 

One popular blog talks about a new native user interface library, DirectUI, that builds on top of the native Direct2D and DirectWrite APIs that were introduced with Windows 7. According to the blog, a new platform code named "Jupiter" is part of Windows 8 and is a "Native XAML" runtime that runs on top of DirectUI.

If the blog about the Native XAML and DirectUI/Jupiter project is true, then re-org of the XAML team makes complete sense. In case you missed the leaked news, the XAML runtime team at Microsoft is moving to join the Windows team, the XAML runtime team for Windows Phone 7, Xbox, and browser plug-ins is moving to the Windows Phone 7 team, and the XAML tools team will remain in the Microsoft developer tools division. 

To me, this looks like Microsoft doubling down on its XAML strategy, not abandoning it. By putting the XAML runtime team under Windows, Microsoft is making XAML part of the core operating system. This is huge. Anything included as part of the Core OS is treated as royalty inside of Microsoft. It also means that any XAML based application (either in WPF or Silverlight) will run natively as part of Windows, opening up the door to even faster performance.  (History buffs may recall that this was the original vision of XAML, aka Project Avalon, that was presented at PDC 2003. Better late than never? ;))

The Future: Native XAML

I see XAML as a native part of Windows 8, Internet Explorer 10, Windows Phone 7, and Xbox- the common thread that unifies development for the Microsoft stack, even more so than .NET (which does not fully run on all of these platforms) If HTML5 gets fragmented, as it surely will, I can one day even see a native, hardware accelerated runtime of XAML being released for the Mac (there already sort of is one), Android, iOS, and maybe even Linux sometime in the future. 

Notice that I have not been saying "Silverlight" or "WPF,” but instead “XAML.” It is more than possible that WPF and Silverlight will merge into "Silverlight+" or something like that, but XAML is the star. Since the XAML runtime has moved to Windows core and is no longer part of .NET, a "Silverlight" app that is deployed on the web, can run natively on Windows and take advantage of the local system and hardware, blurring the difference between WPF and Silverlight. It’s a natural evolution since the WPF and Silverlight teams at Microsoft were really one big team at this point. 

Since the Silverlight brand is popular and has a cool name (something Microsoft never seems to do), I have a feeling that Microsoft will leverage the Silverlight brand when releasing "Jupiter". I expect to see one native XAML runtime and development environment ship as part of Windows 8, effectively merging WPF and Silverlight. 

I don't see Silverlight as being dead, but rather reborn bigger and better. Instead of being its funeral, the Build Conference will be Silverlight and XAML's graduation party.

At Telerik, we are also going to double down on our XAML strategy. Since the beginning, we have always had only one XAML team with one XAML code base, so our WPF and Silverlight share the exact same codebase and our Windows Phone 7 tools are a subset of that codebase. We see Native XAML as a massive opportunity and will continue to support our XAML tools now and in the future. We’ve recently released a beta of our XAML controls that features a Persistence Framework and DataServiceDataSource as well as some spectacular Data Visualization controls. Our XAML tools, including Windows Phone 7, will ship the Q2 release later this month. We have our Q3 release scheduled later this year which should include some great new charting capabilities, new DataSource controls, and a ZIP compression library.

We will continue to make improvements to our XAML tools, including our Windows Phone 7 controls and our Facebook application, telerik fdeck, built on top of WPF and look forward to Native XAML’s long future.

Tuesday, July 5, 2011 3:01:00 PM (Eastern Daylight Time, UTC-04:00)
what i cannot figure out is why Microsoft would keep their development world hanging. My company, NetConnect Healthcare Systems has written a complete physicians office billing system and medical records on Silverlight. we added a Windows Phone app on Silverlight. We have even written a tablet version, running on the ExoPC (until a real tablet comes along that runs Silverlight). within the last month, we have started changing direction, moving our .Net OperationContacts to JSON, and started developing on the Android and the iPad (Objective C, ouch). IMHO, it makes no sense to just tell the world if what you predict is true. it would excite outsiders that Microsoft is embracing HTML5, while offering the more powerful tools for web business applications. instead, we here what your people (and us) are saying... Is Silverlight dead!
Tuesday, July 5, 2011 9:13:04 PM (Eastern Daylight Time, UTC-04:00)
Excellent commentary on this debacle. I too believe HTML/JS drama is just to hook other web devs from other platforms into developing for the Windows OS, and that "real" LOBs won't be using HTML/JS.

I also concur with the merging of SL/WPF together, and like that you guys are doubling down on your XAML strategy. I'm excited for the future and what we can do with XAML now that WinDev team is going to make XAML faster allowing us to do more slicker animations/transitions/effects/etc.
Thursday, July 7, 2011 7:29:03 PM (Eastern Daylight Time, UTC-04:00)
Silverlight is a *lot* more than just xaml - if Microsoft carries over xaml into future platforms, but replaces the api, then Silverlight is in fact dead.

Already Silverlight is in bad shape with many different variants and seemingly no focused direction. Case in point: the divergence of Silverlight 5, Silverlight for WP7, and XNA – the schizophrenic feature sets in those variants – and missing support for Silverlight on various platforms, like on WP7 as an app, but not in the browser (because these are two very different versions of Silverlight).

Not good. :/
Friday, July 8, 2011 12:42:55 PM (Eastern Daylight Time, UTC-04:00)
Wait a second here. XAML is just a file format for creating object graphs. Building user interfaces is just one of its many uses. So saying you have "native XAML" is like saying you have "native CSV".
Jonathan Allen
Sunday, July 10, 2011 2:40:44 PM (Eastern Daylight Time, UTC-04:00)
"native XAML" is probably a C++ API framework that uses XAML. According Scott Barnes the "Jupiter" thing was what DevDiv did on their own and then threw to the WinDiv, and the latter is not completely thrilled about it as they always frowns at managed code.
Wednesday, July 13, 2011 5:28:01 PM (Eastern Daylight Time, UTC-04:00)
I am trying to understand how XAML could be 'native' which to me suggests a piece of loose markup would just run. Isn't it compiled into BAML first?
Rod Mac
Saturday, July 16, 2011 1:12:29 PM (Eastern Daylight Time, UTC-04:00)
I am sorry to tell you that Sliverlight is really dead !!!! I do agree with you dude Html5+JS is the future and as you said because of the phoneGab with the Andriod, IOS and blackberry phone.

Michael Hanna
Comments are closed.