I spoke to Microsoft’s Scott Guthrie last week, during his trip to the UK for a couple of Windows Azure events in Cambridge and London.
Guthrie is now Corporate VP Windows Azure Application Platform, a job he took up in May 2011. Before that he worked on .NET technologies including Silverlight, and I asked if he had any reflections on the subject. He was scrupulously tactful.
“In terms of looking at our XAML stack right now, if you look at some of the announcements we’ve made in terms of Windows 8, Metro, Surface, tablets and desktops, and Windows Phone, XAML is alive and well and being used for more things than ever.
“Silverlight 5 shipped after I moved on to Azure. We did an update to Silverlight 5 about a month ago. For XAML developers, and developers using Silverlight or WPF XAML technologies, there is a long roadmap ahead.”
He seemed to me to be saying that even if Silverlight is dead (nobody expects a Silverlight 6), XAML lives on.
I observed that in the new (and much improved) Windows Azure admin portal, the Silverlight UI has gone, replaced by an HTML 5 user interface.
“It’s actually HTML, it’s not HTML 5. It works with non HTML 5 browsers as well.“ he said. “That was less of a technology statement, it was more that, historically Azure had 5 or 6 admin tools that were fairly disjoint. One of the decisions we made as part of the new Azure that we’re building was, let’s have a single admin tool framework that connected everything. We decided to do it with HTML, partly because we did want to get reach on tablets like iPads and Android devices.
“It was less a technology statement, it was more that we wanted a single admin tool, and we decided to go with an HTML-based approach. We still use Silverlight for some of our admin experiences like database management tools, and for streaming and other capabilities.”
It is true that Silverlight remains in the Azure database design tool, if you use the portal. It is also used extensively in System Center 2012 – yes, I have actually installed it – and in Windows InTune.
It is as if, back in 2009 and early 2010, the memo went out: use Silverlight for everything. Then, later in 2010, the memo went out: use HTML for everything; but too late for the current generation of server admin products.
Microsoft has announced that Visual Studio LightSwitch, which generates Silverlight applications, is being revised to offer HTML applications as well. I expect this process of Silverlight removal and de-emphasis to continue over the next couple of years. Note that Microsoft’s own Windows RT does not support Silverlight (as far as I am aware), nor does Windows 8 on the Metro side.
I’m an avid opponent of Silverlight in the web (R.I.P) so please feel free to continue to the next comment. (I’ve nothing against SL in windows or windows phone and I don’t care about these).
Funny how no one want’s to take responsibility for the vision of SL. You know, the vision of Silverlight on every/many sites. Silverlight that was declared by someone as “multiplatform” and was believed to really be as such by gullible Microsoft developers. Funny how Scoot Guthrie suddely talks about open-source and openness as if SILVERLIGHT NEVER HAPPENED.
Shame.
In my opinion, the problem with Silverlight and WPF is the internal threading model, not exactly designed for use in mobile devices (battery, fast switch off, …). Otherwise Microsoft would be all gear on Intel-based devices.
XAML can live on. After all, all XAML is is a generic XML markup for declaring objects, method calls and setting properties. You could in fact instantiate XAML for just about anything as long as it has an equivalent in a declarative programming language.
There is thus no contradiction between saying Silverlight is dead, and saying XAML lives on.
Partial quote from ScottGu: “We still use Silverlight for […] streaming and other capabilities.”
Except that Scott’s 2012-06-08 live video streamed announcement “Meet the New Windows Azure” was streamed with Flash and not Silverlight! A further irony was that their Flash video stream was choppy and performed poorly!
I’m must smile when I hear ScottGu saying the choice of HTML and Flash were not “technology statements”. I like Scott, but this is not what I would call direct, honest, “plain speaking”. Please, just give it to us straight Scott.
Vic
Semi-related question for you Tom:
In MS’s 2012-06-20 announcement of Windows Phone 8 at about 1:31 in the video (http://channel9.msdn.com/Events/Windows-Phone/Summit) they give “guidance” for which technologies to use when writing Win8/WinPhone8 programs.
They emphasized using XAML and C#/VB for “Apps”, and only recommended C++/C/Direct3D for “Games”, and HTML/HTML5 only for “websites”. This seems to be a bit of a course-correction from the 2011-09 Build conference, where it seemed they were promoting HTML/(and to some extent also C++) as a co-equal techniques for writing general “apps”.
My question: Do you see this as bit of a shift in emphasis?
Vic
Also note that Win RT does support Flash. I wish you had asked Scott why they support Flash but not Silverlight. We all know the answer, but it would have been interesting to hear his reaction. Maybe he would have been honest and said “Yeah, ok, we enticed developers to Silverlight and then screwed over by going with Flash”.
Sorry Tim, I addressed my question to you with the typo “Tom” instead of “Tim”.
Vic
@Bob F: In which way does Win RT support Flash and not Silverlight?
Please note that Tim in the article mentions “Windows RT” (which is the Windows version for ARM processors) and you mention “Win RT” (which is the development platform for Metro applications), which are two different things.
Also, note that Metro Style IE10 does not support either Flash or Silverlight (or Java or any other plug-in for that matter, that is why they are now evangelizing about a plug-in free web).
Regular, desktop-based IE10 *does* support both Silverlight and Flash (and any other plug-in).
Since Windows RT (the Windows distribution for ARM processors) only runs Metro-style IE10, it is expected that it won’t support Silverlight running inside the browser (as Tim mentions), and the same applies to Flash and any other plug-ins.
Now Win RT (the development platform for metro style applications) uses XAML and C# to create full-screen apps that run in both regular Windows 8 and Windows RT. By definition, it doesn’t support Flash, but since the XAML and C# they use are closely related to Silverlight, I would say that Win RT is, actually, the evolution of Silverlight. I would even say it is Silverlight 6, just without the branding.
So, I still do not understand where and how you see them favoring Flash instead of Silverlight. From my point of view, both of them got equally screwed with the new plug-in free discourse (which I think took us 10 years back in time, I would say in terms of the capabilities of the web, but that is another topic).
@Marvin – I guess now Flash is supported in both Metro & Desktop versions. IE 10 still doesnot support plug-ins in metro version, however, for flash they integrated it inside IE 10.
You can check this about it here
http://answers.microsoft.com/en-us/ie/forum/ie10-windows_8/question-about-flash-in-windows-rt/54250c14-923a-4a02-98df-605385078009
So question is did Silverlight work? in that did it do its job and become a success? Ask that question and you’ll get an answer fumbled with Yes it did (past tense) but… lets look to the future blah balh C# / XAML retreat speech.
Today, .NET developer(s) are paralysed with choice and uncertainty. I think in turn they think they can weather storm, as in wait this out until Win8 ships and then Silverlight will become a distant memory – like IE6 😀
Do you know if Silverlight will be dropped in the SharePoint implementations as well?
There was a time when I considered updating my older .Net WinForms apps to XAML. Now I am glad I never did. It seems like WinForms and HTML (for web) are the only stacks you can count on. I mean, yea sure, WinForms is not sexy and in many ways it’s a PIA, but it’s the only desktop stack that is supported on all versions of Windows with all versions of .Net and isn’t in danger of being chucked out the window on a whim. Sure, there hasn’t been much innovation, but it won’t disappear either because it underpins even all the newest Microsoft stacks.
Weird times.
XAML is the best windows platform for C#. Tt would be a shame if Microsoft dropped it. WinForms are ok but XAML makes them obsolete. Throw in EntityFrame work and crank out some high quality products!!! I HATE Javascript (for large apps). The only reason Javascript is popular is that it’s the only browser language. Large Javascript projects collaspe under there own weight and TDD is a must because one line of code can crash and entire app without any notice. XAML, C#, EF should be around for a long time but MS seems to want to follow the industry these days instead of leading.
I guess I am glad I am getting ready to retire.
We seem to have missed the entire purpose of these languages: TO SOLVE PROBLEMS!! Instead we continue to get new technology after new technology with no real efficient bridge between them that either dooms us to re-write everything or have a large mess of almost un-maintainable code in a large variety of technologies. And of course we are forced to move to the new technologies by the vendors making them obsolete on new platforms and then end-of-life’ng the old platforms. Don’t get too comfortable with Javascript because they will come up with something “much better” and then create browsers that will not run Javascript.
Vic Klien said: “Please, just give it to us straight Scott.”
You want the truth? You can’t handle the truth.
All of us Silverlight enthusiasts are in denial. We like SL. We want it to go on forever. But we just cannot accept that Microsoft has abandoned it.
The old Microsoft persevered until a new product which comes from behind gained traction and became dominant by version 3. I don’t know what has happened to Microsoft in the last few years. They are now quick to surrender. Silverlight: refused to build for Android or iPad (Apple’s questionable approval notwithstanding). Live Messenger: refused to build for Android or iPhone and letting it decline. The list goes on.
K.Kong said: “You can’t handle the truth”.
Actually, I think most of us can handle the truth. What irritates me is when I have to figure out the truth indirectly, rather than getting it straight from MS. What is particularly irritating is when ScottGu tries to spin it as “nothing to worry about”, while at the same time his own Azure project just switched away from Silverlight in a major way!
I prefer the Bob Muglia’s more direct, honest “our strategy has shifted” approach.
Vic
Reading this article, and the comments, carefully, left me more confused about what supports what in Windows’ future than ever before.
Marvin Varela’s response to BobF, which I thought clarified the various ambiguous usages, on this thread, of “WinRT” and “Windows RT” nicely: which says Metro Apps IE10 will not support Flash, or any other plug-in, is immediately followed by a response from Kiran that Metro’s IE10 has Flash built-in.
Looks like I have a lot of link-following to do in my future, absent crystal ball:)
with respect for your (all) technical excellence,and passion, Bill
“We decided to do it with HTML, partly because we did want to get reach on tablets like iPads and Android devices.” (Guthrie’s reason for why they used HTML instead of HTML5)
Wow, what a misdirect. The ironic thing here is that the iPads and Android devices all have browsers that support HTML5 far better than IE does. (See http://fmbip.com/litmus/) IE10 isn’t really fully released yet. So, they designed it around HTML because they can’t run HTML5 *on IE* everywhere. Everyone else runs it just fine, with automatic updates to boot. (coming in IE10.)
Smoke and mirrors from Scott Guthrie. Wouldn’t have believed it if I hadn’t just seen it myself. Used to follow him religiously.
My background: I’ve been strictly a Microsoft developer since 1990, but I’m transitioning to Javascript/HTML5 because the market demands it. In my opinion, Microsoft has been losing market share for the last couple of years because of their failure to stay on top of that. The writing was on the wall since Javascript was put into browsers in the early 90’s.
My last experience with Microsoft was a nightmare : I had to migrate more than 10 sites made Office live, to office 365.
Can you believe it : there was no way to import the pages, the layout, the images and so on. They officialy recommanded to copy and paste the contents from olsb to office 365, page by page… Absolutely unbelievable! Are we in 2012 ? But the truth is : fool me! Well done for me. I hadn’t remembered from the past. I was a foxpro and then visual foxpro developper. Microsoft bought the the company and then abandonned it. Leaving us in the dust. Same for silverlight. Who’s next ?
Now I’m ready to enjoy a nice cold one, when I see Microsoft bite the dust with windows 8. Where is the start button ? I like to think they are all drunk or stupid in that company. Because if not, its’ just kind of scaring of what’s happening in the IT world as we’re all concerned by our future. Paul
Well it seems that at this stage, WinRT is still pretty much at an embryonic
level regarding range of options.
In order to get a decent LOB app – I’m not just talking
about code you’ll find in Contoso lab showing how to display cookbook recipees in a gridview layout,
the whole lab was done in less than 45 minutes including a coffee break,,,-
I mean in order to build a real LOB, we obviously need a better range of options with controls.
Those who built RIA and LOB apps in Silverlight or WPF might have felt a bit disappointed…
It’s obvious clients will ask us to include either gauges and charts controls at one stage.
So tell me how should we deal with it?
The first answer we always ear is to use a 3rd party tool… Some have done a pretty good job already…
If you can afford it, are in a hurry and are willing to pay the price, then be my guest…
The second was trying to port either some Silverlight or WPF code to WinRT expecting
to work. Well you have to start at some point, right?…
Have you tried it in XAML/C#? Well I did… We’re in a different ball game folks
and it’s not just a matter of Cut and Paste. I managed to build decent gauges
with animation, but to be honnest it was back to the drawing board…
and I’m working on Custom Charts and realize I still have a lot of work to do…
patience and determination, but still…
God I wished things could have been done an easier way…
HTML | Javascript code was pretty much easier to handle… Well I come from the old
school and some things about Javascript I haven’t forgotten…but still is it the best option overall?
I doubt it… time will tell…
Regards
There is more to life than android devices and iPads. Silverlight is a great platform for corporate enterprise applications. I do not understand why Silverlight is not being included in IE like HTML5/Javascript are.
Microsoft failed to realize the impact on the individuals that adopted Silverlight and the long term consequences. Lightswitch? I won’t waste my time because it probably won’t be in vogue next year. Microsoft’s Silverlight fiasco gave the anti-Microsoft crowd all the ammunition they needed to justify not using Microsoft products.
Dumping Silverlight is one of the stupidest moves that they could make. It is right up there with “new-coke” a couple of decades ago.
I agree with several others here. I persuaded my management to adopted Silverlight to solve some of the problems with delivering applications via the browser (to avoid installs for example) and in preparation for mobile devices (Windows phone for example).
Now after extensive Silverlight development, ALL of that work is no good for the Windows RT platform. People will say well why not use Surface Pro. Simple, cost! The whole point of browser application delivery is to be able to deliver functionality to a lower end machine. If I have a business choice between Surface Pro and a laptop, the laptop is a far better deal and then I will not get Windows 8.
The Windows RT tablet is cost compelling for business but this is NOT windows. Stupid stupid stupid. I might as well buy iPad or other tablet since there is nothing Windows about it. I still cannot deliver content to any of these devices via Silverlight.
I am now up against management who say “I thought that we developed all this for mobile devices”. So what do I say? Oh I made a mistake trusting that Microsoft would support ITS OWN TECHNOLOGY!
Well no more. I am sick of this. Microsoft are NO LONGER developer friendly or business friendly. Time to move to something else.
As stated before, what is important is xaml+C#, not Silverlight.
C# is really productive, while xaml is just the best you can get for user interfaces (don’t even try to compare it with that old CSS3, which looks like begin back in 1970).
That pair xaml+C# is called differently depending what you are doing:
If you are on Windows, you call it WPF.
If you are on Metro/WinPhone, you call it WinRT.
If you are in a browser, you call it Silverlight…
I just hope that browsers will stil support xaml+C#. If you want to have some code running on the client side -which is far more efficient than generating pages on the server side-, then you only have Javascript (including ajax), Java applets, or Silverlight.
All of them cause indexing challenges, but Silverlight is by far the most advanced.
A few issues here
If you are on Windows, you call it WPF.
If you are on Metro/WinPhone, you call it WinRT.
If you are in a browser, you call it Silverlight…
None of these are compatible so you need many versions .. WPF is mostly pointless as silverlight can do it BUT silverlight Xaml to WinRT is a major change the .NET libs are completely different.
Also re Javascript MS are now pushing a type safe wrapper called type script . So MS are saying HTML5 + javascript not Xaml.
>So MS are saying HTML5 + javascript not Xaml.
Are they really? I hope not… 😉
Since typescript will probably have the same indexing issues as javascript, I can’t see anybody happy to write CSS+typescript after having tried xaml+C#…
I am so angry that Microsoft isn’t supporting Silverlight on Windows Surface. Javascript sucks in comparison to C#. Since I have to program web applications in javascript from now on I might as well dump using Microsoft tools all together.