Sinofsky and Silverlight

  • Nov 14, 2012 at 12:35 AM
  • Shawn Wildermuth
  • 43 Comments

ie10_windows_8With the surprising news of Sinofsky's leaving Microsoft still fluttering in the winds, I knew I'd hear some rants about Silverlight be heard among the XAML-lovers out there. I decided I needed a blog post (albeit a short one) to say my peace.

I've heard many say that Sinofsky is responsible for the death of Silverlight and that it's absence on Windows 8 is a shame. I hear a lot of Silverlight enthusiasts (or apologists) that Silverlight, while being a great technology, was killed because DevDiv and Windows couldn't get along. At last year's build, it was big news that Sinofsky actually said the word Silverlight made news. While the idea that Silverlight ran on a Mac certainly caused waves in the Windows team, it's not the reason for it getting pushed to the pile of technologies that are now in 'sustaining engineering' mode. If any executive is responsible for the current state of Silverlight it's one who is no longer with us...and not even part of Microsoft: Steve Jobs.

When Silverlight launched the target was clearly Flash. Flash was a great platform for advertising, games and starting to push into line of business apps. Silverlight was the dual barreled shotgun that Microsoft was pointing in Adobe's face. But at some point Flash became irrelevant. When did this happen? It wasn't Silverlight, it was iOS. When Steve Jobs decided to not allow Flash to be installed on any iPhone, Flash was demoted from the web.

In the face of realizing that Flash was being shoved aside and that Silverlight would never get onto handhelds either Microsoft seemed to move Silverlight into a Line-of-Business application platform. This was hinted at in Silverlight 3, but in Silverlight 4 and 5 this should have been crystal clear to anyone paying attention. I went from teaching designers at Agencies, to teaching .NET devs how to get into Silverlight. Silverlight 3 changed it remarkably.

But what about Silverlight on Windows 8? The fact is that Silverlight does run on Windows 8. It doesn't run in the Metro Modern version of IE, but I don't think that matters. The reasoning behind no Silverlight in the new experiences is that no plugins work. Flash only works (sometimes) because Microsoft is embedding it directly into the browser instead of relying on Adobe's update mechanism. Plugins are dying, IE10 reflects that reality.

Where Silverlight really doesn't work is in Windows RT (e.g. the ARM version of Windows). I have no inside knowledge here but to me it's pretty clear that this is just a matter of cost/effort benefit analysis. Porting the plugin onto ARM to run just in the 'desktop' browser couldn't have made much sense. Probably a bigger job than you'd think IMO.

In fact, I think that a bigger problem here is that many Silverlight developers are simply holding on too tightly. In Windows 8 we have a great XAML stack (better than WPF and Silverlight IMO) and that's where we should be paying attention. Complaining about Silverlight is valid as there are many applications out there written in Silverlight that would like a better story of running on Windows RT...but the effort isn't trivial to make this happen (AFAICT).

But back on message...I am just as concerned and excited to watch what happens at Microsoft now. I think with Sinofsky leaving Microsoft has a chance to actually have the divisions work together for more integrated products. Windows 8 was a step in that direction, but I don't think it would have happened under Sinofsky. I like what I am hearing about Julie Larson-Green. In any case, I am interested in seeing what happens.

 

Comments

Gravatar

Anil Mujagic Wednesday, November 14, 2012

They just need to tell us finally what is the strategy for enterprise/LOB development. Currently that is far from being clear.

Gravatar

Noel Wednesday, November 14, 2012

This is the internet so of course people will complain about everything, but for me what was cool about Silverlight was the cross platform Client capability (C# on the client). At one point it ran on top of Live Mesh, which they lead us to believe would eventually run on anything, phones, DVRs,... It could sync everything for us including Silverlight applications. Wicked cool ideas (Ray Ozzies I would guess). But no app store to monetize the apps so that had to go. In any case RT is cool but its not cross platform, and by that I mean cross Win 8 and Win 7 Vista and XP. So no on ramp, from the past. And true cross platform has been left to the Web (HTML5)Which as a Line of Business developer leaves me where I have always been, building and using pretty crappy Web apps, I mean sure the business could build whizz bang, HTML 5, SPA apps, but they are not going to, it cost to much!

Gravatar

Steven van Dijk Wednesday, November 14, 2012

"In Windows 8 we
have a great XAML stack (better than WPF
and Silverlight IMO)"

Care to elaborate on that? At TechEd they told me at the Xaml open questions panel that Xaml on Win8 was somewhat equal in functionality to Silverlight 3. Your statement seems to contradict that, so what is true?

Gravatar

roetchield Wednesday, November 14, 2012

"In Windows 8 we have a great XAML stack (better than WPF and Silverlight IMO)"

And your opininion is based on what? No type converters, no data validation, no basic controls. Just some fancy transition effects.

And if we look beyond XAML, there are more important things missing in WinRT like a fully functional MEF or RIA services.

Gravatar

Andrew Wednesday, November 14, 2012

I'm a WPF\Silverlight developer since 2008 but I have no problem rolling up my sleeves and learn something else. I am already doing that.
But to me it looks like I can't find the same quality tools. This is the problem. Some might say it's comparable, but it's really not.
I agree that the app store apps use a very similar dev model as Silverlight.

But in my opinion it's a bit like comparing apples to oranges, only thing in commons is being fruits.
You said that Silverlight's death started with Steve Jobs not allowing Flash on iPhone.
But Silverlight was already a cross desktop platform tool at that point.
Flash never worked on iPhone, it's not like Flash used to work and then support was removed by Apple. It never worked and Apple never said at any point they would consider it.
Silverlight is a great cross platform desktop dev tool.

I might be missing something, I would like to hear some entitled opinions.

Gravatar

Dirk Richter Wednesday, November 14, 2012

WinRT and XAML/C# targets only the customer market.
XAML/C# feels Silverlight 2.

In our company we are developing a Silverlight 4 desktop app for 1000 user (PRISM, WCF, EF, SQL Server): Fast, easy to use and easy to deploy.
Now we have the requirement, to move some of the PRISM modules to tablets. So we aren’t thinking to move to WinRT/XAML/C# but thinking to create Metro styled controls for Silverlight, switching only the view and test the new Win8 tablets/surfaces with the full Win 8 OS.
There is no need for WinRT in companies.
HTML5/JS is for cross platform developers (iOS, Android, WP). And XAML/C# isn't yet usable for multi target development (WinXP, Win7, Win8, Win desktop, WP, surface).
So the corporate Windows developer have to stay with Silverlight/WPF until the end of the livecycle of Win 7.

Gravatar

Fallon Massey Wednesday, November 14, 2012

I've move on completely and embraced WinRT using both C++/XAML and C#/XAML.

Sure your post was short, but so accepting of the fate of Silverlight. Wouldn't it have been interesting to spend half a second looking for ways Silverlight could have succeeded, rather than all of the ways it could fail.

What if Microsoft had made a low end tablet based on WP7?

What if they tried half the things Xamarin does.

Seriously, I can't see it being hard to port C++ from Intel to ARM, I just don't see the pain points, and it's probably 10 thousandths of the effort to port an OS!

Having said that, I do think the Win8 platform is higher performance, and love the DirectX integration.

I guess my main complaint about your post is the way you rolled over so easily, but in the final analysis, you have the right to your own opinion, and my thoughts are moot at this point.

Gravatar

Stuart Lodge Wednesday, November 14, 2012

Thanks for the article. Interesting reading.

However, the line about:

> crystal clear to anyone paying attention

doesn't tally with my recollection of the last few years.

For my part, I was told by several MS Developer Evangelists in the UK that I could deploy Silverlight solutions to my customers with confidence. As evidence, they said that I should look at the amount of MS User Interfaces as a sign of confidence that MS was positioning Silverlight for the future - e.g. things like the Windows Phone store, the Azure management portal, SQL Azure management, the WP7 platform itself, etc.

IMO, to suggest that the MS strategy was 'crystal clear to anyone paying attention' is very incorrect.

And while we're on the topic... right now is the strategy crystal clear too? The push towards Javascript and C++ was pretty strong at BUILD, but where that left C# was really unclear (IMHO).

Thanks again for the post - and for reading the comment too :)

Gravatar

Belikov Sergey Wednesday, November 14, 2012

I agree with Noel. Windows 8 XAML stack is cool, but who needs enterprise solution working only in Windows 8? Enterprise clients still use Windows XP and (some of them) Mac OS. HTML5 still crap for serious applications.
Noone like browser plugins, but I still can't understand why latest Silverlight engine is not embedded in IE10 (like flash)?
And, IMHO, Silverlight OOB is still the only useful MS technology for small applications. Modern UI? Works only in windows 8. WPF? Requires .net 4 to be installed - pain for most users.
Whats the problem to enable Silverlight applications to be published in Windows Store? This way you could create applications that runs native in Windows 8 (even on ARM), can run on earlier versions of Windows and even on Mac. If ther reason is to make users buy new Windows, I think good Metro-style applications that could run in older versions of Windows can make users get used with Metro and probably even convice some Mac users give Windows 8 a try.

Gravatar

Rick Hodder Wednesday, November 14, 2012

Hi shawn, Thanks for this posting! I have to admit I'm just now getting into Windows 8. You mention above that "In Windows 8 we have a great XAML stack (better than WPF and Silverlight IMO) and that's where we should be paying attention" - what technology are you referring too (what replaces silverlight and wpf?)

Gravatar

Dan Wednesday, November 14, 2012

You mention 'better than WPF' My problem with win 8 apps for LOB, is that you don't have multiple windows visible you can switch back and forth from/move to the other screen. The other thing my LOB programs need to do is print (with no dialog boxes), save and import documents quickly. Plus I use telerik WPF client side reports to take a load off the server. HTML 5 wouldn't work very well for my accounting programs. You don't see WPF going anywhere do you?

Gravatar

Alex Wednesday, November 14, 2012

What is so great in "great XAML stack" in WinRT?

Gravatar

Shawn Wildermuth Wednesday, November 14, 2012

Steven....the WinRT XAML stack has data binding baked into unmanaged code for speed and has XAML improvements (e.g. binding to anonymous types). et al.

Gravatar

roetchield Wednesday, November 14, 2012

Binding to anonymous types is possible also in Silverlight/WPF if you decorate the assembly with [InternalsVisibleTo("System.Windows")]

"data binding baked into unmanaged code for speed" sounds like marketing b. I'll never need any speed improvement on the client side, Silverlight is fast enough. Usually the speed problem appears on the server side.

Like I said before, the only visible improvement that I found in WinRT/XAML is some cool children transitions.

Gravatar

Sandy Place Wednesday, November 14, 2012

If only that win 8 xaml stack ran on the 500 million win 7 machines that exist in the wild then I might consider embracing that platform. Alas Microsoft is now a server side platform for me and I am enjoying brushing up on modern javascript/css/html ui's for the client.

Gravatar

Shawn Wildermuth Wednesday, November 14, 2012

I am glad that many are interested in the Silverlight discussion, but the purpose of the blog post was to see that the change in the environment away from plugins is what killed adoption, not Sinofsky.

Gravatar

kbauer Wednesday, November 14, 2012

Here is another take on things...

http://www.lhotka.net/weblog/SinofskysDepartureGivesMeHopeForWindows.aspx

Gravatar

Jason Craig Wednesday, November 14, 2012

Shawn, do you think MS will put a new Touch Oriented version of Silverlight?

Win RT supports flash but not Silverlight, why would they do that?

I am developing a LightSwitch application and feel I have been thrown under the bus by Microsoft because they are not transparent about Silverlight's future.

There is no reason they can not get the performance of Silverlight to meet or exceed Win RT and also there is no reason they could not make it touch oriented and have a Windows Store model for it.

Gravatar

Shawn Wildermuth Wednesday, November 14, 2012

Jason,

I am not MS...no idea. That wasn't the purpose of the post.

Gravatar

Bigmealy Thursday, November 15, 2012

Win8 is not proven in enterprise yet, so Silverlight and WPF are still king of the hill for LOB apps. Shame that SL5 never got a proper Expression Blend tool (Preview for SL5 version broke design-time view models). MS is too focused on consumers with WinRT / AppStore, and is forgetting about their larger revenue stream of enterprise folk. I for one am confused what the roadmap is for current SL LOB developers...

Gravatar

David Roh Thursday, November 15, 2012

Hi Shawn,

Let's agree to disagree - Sinofsky is absolutely responsible for putting Silverlight on life support, pushing C++, and for pushing HTML5 - I am really glad to see him go.

Silverlight 5 is one of the most awesome technologies that Microsoft has produced.

Microsoft certainly had the ability to stand up to Steve Jobs if they wanted too.

I believe the real problem with Silverlight is that if it was allowed to run in Metro, it could have by passed the Windows App Store.

I don't believe Microsoft will revive Silverlight - large companies are moving rapidly away from write-once-run-everywhere.

David

Gravatar

MehGerbil Thursday, November 15, 2012

Good post Shawn, but I take exception to the idea that Silverlight developers are holding on too tight. I know you don't mean that as an offense, but from my perspective this is entirely on Microsoft.

The problem I see is that by the time a decent library of tools/controls/patterns is established the entire eco-system is re-invented and the work has to start nearly from square one. I cannot be re-writing systems every 4 years because Microsoft, in a fit of confusion, goes running off in a new random direction.

Why all of a sudden the term 'plug-in' became a bad word is beyond me. I can accept that it is a bad word now - I'll move past that - but what bothers me is that something with no real downside all of a sudden became the big evil. What will the next evil be? Managed code? Xaml? Web services?

Roll the die and pick one because it's seeming a bit random from where I'm sitting.

It isn't my fault that a technology gets tons of promotion for 5 years, evolves to the point where it's very capable and then is suddenly abandoned. I'm not upset about learning new things - I'm upset that tons of my time gets wasted on a whim.


Gravatar

Sandy Place Thursday, November 15, 2012

http://devlicio.us/blogs/rob_eisenberg/archive/2012/04/18/the-manifold-blunders-of-xaml-part-1-version-and-platform-hell.aspx

I think Rob hit the nail on the head for me.

Gravatar

Mark Thursday, November 15, 2012

I hate that plug-ins are not going to be supported. Plug-ins were what could allow you to do anything that isn't baked into the original browser stuff. Like being able to run C# (or in my case Delphi Prism) instead of javascript (which I don't exactly hate, but I sure don't like).

The whole issue with flash eating up batteries etc. was bogus.

Gravatar

Br.Bill Thursday, November 15, 2012

So what is Netflix gonna do instead?

Gravatar

john Thursday, November 15, 2012

In WinRt you are sandboxed not only as an application but to a single OS. This is an IOS comparable offering and as is eluded to by the good folks at PnP (http://compositewpf.codeplex.com/discussions/261609) is not a strong candidate to build LOB solutions with, specifically due to the fact it runs in a sandbox.
HTML 5 just isn't there yet and won't be for some time to come which was clearly evident by Facebook's reversal on that platform.
I would still have to say, for the enterprise it has to be either WPF or SL with my vote staying with SL.
Have you looked at LightSwitch for example? This generates out a SL client and recently an HTML 5 client that targets mobile devices. Sure the SL client isn't perfect but it was two steps away from it then MS decided to invest into an HTML 5 client essentially putting the brakes on finalizing the SL client for the enterprise.
At the end of the day, choose what you wish to choose but IMO its very simple, SL will run in most enterprise scenarios today including the DeskTop for Windows 8 with the least amount of effort, Wpf is next, then its HTML 5 and at the far end of the choice list sits WinRt.

Gravatar

M Stick Thursday, November 15, 2012

For a longtime I have pondered the future of Silverlight and any technology that is used by us who create code full of vulnerabilities and holes. Microsoft can no longer afford to allow self-important coders to damage their reputation. Beware of the unexpected third leg that will be placed firmly in your fury little butts.
I have stopped and looked around to see, what is gathering momentum.
I believe it is SQL Server.
Last time I started SQL Server 2012 it was powered by Visual Studio. I believe the power will be given back to the DBA to administer what data you will receive and any code that you can add will only take away from what is delivered.
All that will be left for the .net framework coders are, drag a data object onto an html 5 form. Don’t worry about the colors and graphics because coders can’t do that well either.

Gravatar

Eric Friday, November 16, 2012

Microsoft may wake up one day and realize they need applications on the Win RT platform. Why else is a consumer or enterprise going to buy the hardware? One simple way to get more applications on the platform, now, without making ISVs maintain two versions of the code is by supporting Silverlight. I see lots of IPads, in enterprises, running emulators back to terminal servers. I've been around long enough to remember lots of PCs running emulators to IBM midrange and mainframe computers. Native PC software removed the need for the emulator and, consequently, the need for IBM. There are lots of people writing software for IPads.

Gravatar

Paulovila Friday, November 16, 2012

Hi Shawn, I think you are wrong saying that it wasn't Sinofsky the one to blame on killing Silverlight . Let me ask you this, If somebody tells you to shoot yourself in the foot , do you do it?. Then, Sinofsky could have left Silverlight 6 to run in both environments (app store and native ARM/X86 mode ). That decision was intentional on Microsoft 's side.
Windows 8 current failure is because the developer community is so confused about the strategy behind Snofsky.
Bests, Paulo

Gravatar

Bib34690 Saturday, November 17, 2012

Silverlight programmers have heart broken.
Ok, Sinofsky is not the one to blame for the decision, but for the communication...
Everyone could understand if he takes care about users and explains his choice, if he said "sorry, we didn't have choice", "we will help you migrating"... he didn't.

I will never forget and i'm sure i'm not the only one !

Gravatar

Peter Monday, November 19, 2012

Hi Shawn...

I have just two words for you: "elevated trust"... as a silverlight developer that develops more then a "hallo world"... Windows 8 xaml is simply to limited for me. i'll wait until these *** at MS realize that we need it... just like we need it with Silverlight. To bad microsoft never learns from the past.

Gravatar

Sebastian Negomireanu Friday, November 23, 2012

I think the biggest problem is the lack of feedback from MS to developers. There are companies that have based their long-term strategy on Silverlight, just to realise at the moment that MS has suddently stopped sending any signals.

There are many things in Silverlight which HTML5+JS cannot fill in (starting from the language features to threading, security, libraries, vector graphics etc.). The XAML support in Windows 8 is rudimentary and only focuses on certain types of applications (non LOB, but entertainment, social, web-oriented apps).

Also the lack of a clear release of Blend for SL5 is very annoying. We have customers which depend on Silverlight and it's impossible at the moment to switch to SL5 because there is no final version of Blend. Reworking applications is a very long-term solution, while the businesses need short-term, clear and to the point solutions.

I think the fact that MS has followed the Apple trend is a very bad business decision. Apple (while having a huge sales) has a very limited target - the home user and entertainment consumer. Microsoft on the other hand targets also enterprise customers, which have more needs than a cool eye catching twitter client.

Gravatar

Tom Saturday, November 24, 2012

With MS dropping Silverlight and WPF and then pushing for new development to be done in HTML5, all they done is forced IT managers and developers to question the need for Windows as the Desktop OS. Because if in-house devs have to write apps in HTML5 which means they will run anywhere, on any OS, then why don't enterprises use linux (I know there is MS Office, but there is also OpenOffice). Don't get me wrong I would jump with joy if MS came out and fully supported Silverlight, then IT Managers could commit to the technology without fear of getting their backsides kicked, but is not going to happen. I think MS has opened the door (a little bit) for Linux to enter the enterprise desktop scene, all Linux has to do now is kick it in.

Gravatar

Mags Tuesday, November 27, 2012

IMHO, the whole XAMP is useless. Why we can't use the old good WinForms?. Winforms is faster than WPF, is more efficient to work with it, it is more clear to work with it (not edit a messy xml file), several controls are available and so on.

As a developer, i should say : I DON'T TRUST ON MICROSOFT. So, exists two technologies for MS, technologies that MS can kill and technologies that MS is unable to kill. Silverlight was kill-able while Winforms, WebForms, ASP.NET will not be killed because MS can't kill it.



Gravatar

Joe Dohn Sunday, December 9, 2012

The main issue with the abandoning of Silverlight is the loss of developer trust.

For five years or so, Microsoft tried to convince every LOB developer that Silverlight was the way to go - and from a technical standpoint, it did have quite a few good arguments for it.
So, some people who bought into the vision and trusted Microsoft's track record of always providing backwards compatibility learned the stuff, convinced their employers to let them use it and start projects with it or bet the future of their company on it, only to witness the disaster that was the not-officially-communicated demise of Silverlight.

I happened to be one of these people, and for me the lesson learned is definitely NOT to use WinRT instead. For one, it wouldn't be of any use for LOB apps, because almost no company is on Win 8 and it looks like the majority of companies will continue Win 7 for the forseeable future.

The bigger point however and main lesson learned is not to trust in any Microsoft technology strategy again, because they are changed too often, and too often for political reasons. If I'm going to write HTML 5 LOB apps anyway, I might as well use a full open source stack in order to avoid dependence on Microsofts future shenanigans. And I will. Goodbye MS.

Gravatar

Martin Parenteau Saturday, December 15, 2012

@MehGerbil

I agree totally with your comment. At least, if the new technology could do as much as the one that gets deprecated, it would not be quite as bad. At this point, I don't see that. In my company, we need our application to run on Windows and Mac, and to render XAML. Once Silverlight is out, how can we build such an application?

I know the subject of the post is whether all that is because of Sinofsky or not. If his leaving does not change anything to the decision about Silverlight, I don't feel much interest to comment on that.

Gravatar

Jaime Bula Thursday, January 3, 2013

I'm tired of this, I'll get a Mac.

Gravatar

PL Friday, February 22, 2013

The confusion is still great among windows developers.

Also, the netflix comment was right on, silverlight is cancelled but just now it is being rolled out everywhere for video services that needs protection, what is going to replace that ?

Gravatar

Petr Antos Saturday, March 30, 2013

In relation to LightSwtich (IMHO THE way for higer level of development against interfaces - declarative as much as possible) and no future for SL, I am sure they will bake-in "typescript" as compile-time-static (and so, playing well with design tools) version of JavaScript and they will do everything possible to launch HTML5 client with LOB GUI possibilities near to ExtJS or so ... (Now there is silence before storm, probably)

Gravatar

Steve Tuesday, May 14, 2013

I hope the Microsoft U turn on Windows 8 brings a viable migration path from Silverlight to Windows 8 and Windows RT.

Enterprise users of our desktop app want it to have a tablet UI as well so employees can work away from the office, sales people can demo on the fly, retail customers can run our app on whatever (Windows) device they have etc. If we must totally rework our UI because of the lack of Silverlight compatibility then we will go fully open source.

If Microsoft just allowed Silverlight to run in a browser on windows tablets or allowed Silverlight apps to be downloaded from the windows store then we would stay with them because of the costs of change.

Time is running out though because once we start the move we will not be coming back to MS. It is ironic that MS have proved the case for open source so completely with this Silverlight / WPF / Windows 8 debacle.






Gravatar

Noemata Sunday, August 4, 2013

How do you monetize something that is free (Silverlight)? Selling dev tools? Or selling apps to the masses? Silverlight was the genie that had to be pushed back into the bottle. We are seeing the gradual evolution of a new software marketplace where $2 apps are the norm for now. Given that most of the big creatures out there started as slugs, ignoring the new software bottom feeders will come at the peril of those higher up in the food chain.

Given my personal career trajectory, WinRT is the only viable option for my future. I have to help it succeed and contribute to the demise of its competitors, else I might as well start planning an early retirement.

Survival of the fittest is not necessarily determined by being the strongest, smartest, or prettiest. Mammals made it by being small, agile and able to crawl under a rock when molten showers began to rain down on the Cretaceous landscape.

Gravatar

Jaime Tuesday, October 8, 2013

And now flash builds natively to iOS and Android. And Silverlight somehow does the same with Mono Touch. The Dev comunity was punched very hard and thrown under the bus. That's why Win8 apps have such much a low quality.

Developing an App for Win8 is a risk no body wants to take anymore. You are safer elsewhere.

Gravatar

kevan Wednesday, November 6, 2013

Microsoft has certainly lost its way. Why would you drop the strongly-typed, object-oriented C# on Silverlight as a way to develop RIAs and suggest the free-for-all that is JS as a sensible alternative? Regardless of the features HTML 5 gains over 4, developing in JS is still painful. And as for WinRT/Metro/Windows $tore, forget it for any serious LOB app.


Leave a Comment

*
*
*