But why? Re-creating Flash makes sense to me because of the sheer amount of content, but the only thing I can think of that used Silverlight was Netflix ... years ago.
Is Silverlight really a game changer such that it's worth bringing back from the dead?
I think Silverlight could have been more of a thing if MS handled their UI story better -- WPF/Silverlight was great to develop for and it did solve some problems.
I remember that Windows Phone (which also was pretty good) didn't run Silverlight sites -- I always thought that was the weirdest choice, because if it did it would have provided a great mobile experience for it's time.
Wasn't that the HTML5 which predicated the Flash video demise? Not sure if it affected Silverlight to the same extent.
Yet, the other day I saw another Flash update pop up on Win 10 laptop in Edge. I don't even know why it's still needed.... What a strange ritual (now it's pushidng McAfee along).
Edit: FYI, quoting from the Wired, 2017:
Adobe itself acknowledged the transition [from Flash over to HTML5], though a bit less bluntly:
“As open standards like HTML5, WebGL and WebAssembly have matured over the past several years, most now provide many of the capabilities and functionalities that plugins pioneered and have become a viable alternative for content on the web.”
They were dying before that. Open web standards were a big thing for anyone doing front-end dev then. iphone not supporting flash was just another nail in the coffin... turned out to be a big nail.
Because there was no open source alternative, the web was a terrible app platform (and frankly it’s still not as good as Silverlight was a decade ago).
In an alternative universe where Silverlight, instead of Flash, had become the de facto standard before the iPhone, I suspect we would likely have moved onto something like OpenSilver instead of HTML5 as the backbone for web applications.
Flash was designed for tiny animations and somehow became an application platform. Sikverlight was actually designed as an application platform and it showed, in how much better it was.
I totally agree. I’ve been mainly using the Silverlight-based SDK that powered Windows Phone, and the easiness to made an app with is still unmatched. The ability to make reusable components, complex layout (grids) and design without CSS enabled real productivity. Sure the web now got most of those things, a decade later...
It worked on the same major platforms. One thing that probably extended its life somewhat was that it provided access to some Windows-specific DRM technologies on non-Windows platforms, not entirely unlike how Flash was once the most reliable cross-platform way to play video in a browser.
Not true. silverlight never supported linux, unless you count the mono-based moonlight, which was buggy and didn't support DRM, so didn't work for the most common sites that used silverlight (like Netflix). Flash, on the other hand, supported linux for a long time.
by that logic, (desktop) safari, edge, and IE are not currently major browsers. Assuming that your 2% figure is correct. 2% of everyone that uses the internet is still a lot of people. And considerable amount of effort and money are spent on developing the linux desktop.
It's true because desktop linux was not a major platform. Windows 98/ME were a bigger desktop platform than Linux back then and Microsoft Silverlight didn't support them either. Because they were not major platforms.
The big advantage I could see is that it runs C#, which has broader application than ActionScript.
My impression is that Silverlight's whole packaging & delivery model was envisioned to be more wide-spread but didn't take off. Microsoft was thinking that you could write one program, and then easily package & distribute it as a web app (via Silverlight), or a Windows Phone app, or a native Windows app, or an Xbox app. But... Windows Phone died, Xbox never grew from a game platform into a home multimedia platform, and C# did not achieve popularity for user-facing desktop apps. Plus Microsoft churned Windows APIs a few times.
I could easily see an alternate present where Silverlight was more successful for a longer time, if the timing was different or if a few events broke a different way. But I doubt that alternate present is better than this one.
On C# not achieving popularity for desktop apps, I think the problem is rather the lack of new desktop apps rather than C#, all new development tends too be web based even for internal apps. The problem is still deployment. I think client side blazor has a potential for creating internal applications quickly with zero deployment required without havint to touch javascript.
Yeah if you look at business facing apps I think between the apps that can be web (so they will) and the apps that can't be C# because of perf (games etc) you have a pretty small selection left. That doesn't mean C# has failed in that niche, far from it. But it's not a very visible niche because it's not what consumers use. The use case is bespoke LOB/PoS/Internal apps. Just like VB.
I agree. But it's not a small segment. It's not very visible from the outside but the number of internal developers in large companies is huge. And it's a segment where they don't care so much about load time (intranet, no quick browsing) and where using the same language for front end and back end is appealing.
Not just C#. IronRuby and IronPython both got subsumed into Silverlight, and a lot of work went into a dynamic language runtime layer to allow that to happen. That whole era was full of "could have been"s that ended up not being because someone lost on the Microsoft internal politics merry-go-round.
> and C# did not achieve popularity for user-facing desktop apps.
It didn't? Because a lot of desktop apps I've used seem to use it, and lately it's even become a reasonable cross-platform option.
I know for sure it's pretty common for games; besides Unity, I know e.g. The Sims 3 (and maybe 4?) uses it pretty heavily (including for mods), as do some more recent games like Mount & Blade II: Bannerlord.
While Silverlight did a lot as a media platform the primary selling point from Microsoft was video. It played video very well in the browser. Silverlight is what powered Netflix a few years back, for example.
It gave the front end developer access to the native win32 API througb COM. That means you could effectively write a native app and deliver it over the web. Powerful but also malware-prone.
Microsoft likely wanted it's own runtime in the browser that wasn't Flash or a Java Applet.
The DirectX controls you could use in Internet Explorer were a thing for a while.
The most interesting thing for me about all of this remains that WebAssembly ultimately became one of, if not the first write once, deploy anywhere standard that the major browsers agreed on (after implementing their own versions of it in a reasonably similar way).
Under Ballmer, Microsoft was very much under the impression of “if you build it, they will come”. Silverlight was released because Microsoft didn’t own Flash. Keep in mind this is pre- or maybe circa-iPhone and the canvas tag has only recently been trotted out as a WebKit feature, mainly to support Dashboard on Mac OS X 10.4 Tiger. YouTube was still brand new too, it wasn’t owned by Google yet, and Silverlight was going to be the basis for developing apps on some version of WinCE whose precise name and version number escapes me. To be honest most of my memories of Silverlight run together and primarily for two reasons: while I thought it was cool tech, there were very few sites which used it. I recall a Microsoft video site and almost nothing else. The second reason is Microsoft never fully committed it to any one application other than as web plug-in. I remember the bit about using it in some version of WinCE and I don’t remember if they ever tried to push it for desktop Windows at some point, but I think that was at least on the agenda at some point, with significant overlap with WPF.
I am struggling to remember actual Silverlight applications, the Playboy Archive, and I think the Library of Congress at some point offered part of its collection as a Silverlight application.
It was also a backdoorsy kind of way to limit cool new web applications to Windows. The Mac version was a feature laggard, when it did finally exist, and I don’t know if a Linux version was ever developed, but I’m pretty sure the answer was no for several years. Of course back then Mac and Linux support was considered irrelevant, and the idea of making a native app into a web app to support them wasn’t really taken seriously for a while either. Silverlight would have seen to that cross-platform future never coming to pass had Ballmer had his way, but well, a combination of market forces from iPhones, to HTML5, to Mozilla and eventually Google Chrome really kind of made something like Silverlight and eventually Adobe Flash moot. Flash at least had legacy applications and video streaming that kept it around, Silverlight had to bet on its own future and to a web surfer it just wasn’t different enough from Flash nor did it ever have the install-base of Flash.
But they made not even a token effort at cross-platform, so it was a walled garden. People had only just broken out of the last MS walled garden, and did not relish entering another.
It was an answer to both java applets and Flash, which obviously were someone eleses technologies. Among other things, it supported a pretty good ui system with XAML and easier threading than ActionScript.
So if you desperately wanted to do the "render stuff client side to a canvas on the web using a good programming language" then Silverlight wasn't half bad. The programming model/layout/concurrency handling etc was every bit as good in 2005 as modern js/react is 15 years later, but the tooling was much better. Think of it as vb for the net. You could fire up your development environment and create a new interactive app and compile it to a single deployable file in minutes.
I used it quite a lot, but that was for things like internal apps. It was pretty good as a deployment model for e.g. a complicated dashboard on an intranet page.
Really just a minor side note, but I wanted to say that I was surprised and appreciative to find out that this was rendering real HTML and not just Canvas.
Out of the box, the demo is responsive, Ctrl-F search works, zooming in and out of the browser works, my browser scroll settings and keyboard shortcuts are supported, I can load custom fonts through browser extensions. It's not perfect -- buttons are just divs, and there are a lot of divs. But I was expecting that this would just be a shim around Canvas designed to preserve a few old projects; I didn't expect the authors to have put the effort in that they did to do this correctly.
Getting cross-platform WASM toolkits to render to real HTML has kind of been my personal hill to die on recently, so it's just a pleasant, happy surprise to load up a cross-platform app and not immediately get a bunch of errors about how I need to enable WebGL to look at it. If OP or anyone else around had anything to do with the project itself, I just wanted to say that I noticed, and thank you for your care and attention to that detail.
If you want to go a step deeper, Flash was one of the original things that got me into programming, I currently do web programming, and I found Mozilla's project looking for that specific thing -- a Flash emulator.
I've thought about trying to be cute and petitioning them to let me take the name on a fork, but I don't really have any knowledge about writing emulators, so I unfortunately don't think I would be a particularly good steward or would have much to add to the project.
And I guess efforts like Mame have come farther with Flash emulation since then anyway, though I haven't checked in a while.
There was this demo written in Silverlight that would basically show the complete Windows Vista Desktop UX, implemented in Silverlight, with calculator, explorer, media player.. anyone remember that one? It also ran in firefox.. I think it was made in slovenia, or so? Can't find it anymore, not even a video of it.. Update: here is an old link: https://savas.me/2007/02/01/amazing-demonstration-of-what-is...
I remember this. This was actually demo for WPF/E (WPF everywhere - but more like the browser tab became the window host rather than any cross platform tech) which came well before Silverlight was released/planned. Hosted in browser WPF - it was the full WPF essentially. It was basically a binary plugin for IE8 (I think it was 8) and certain Firefox on Windows only (had to have .Net 3.5x SDK for WPF too), that used some nasty signed ClickOnce shit to run xbap apps. It was horrid. Silverlight started from scratch if I remember correctly and didn't even have <TextBox/> or similar until v2 or 3, by the time Silverlight was up to building LOB apps it was already dead in the water - HTML/JS frameworks were more popular, iPad had already said no to Flash/Siverlight, .Net was stalling (IronPython/IronRuby killed around same time)..
62 comments
[ 3.6 ms ] story [ 129 ms ] threadIs Silverlight really a game changer such that it's worth bringing back from the dead?
https://www.microsoft.com/en-us/research/project/tuva-richar...
[1]: https://en.wikipedia.org/wiki/Hikaru_Aizawa
Yet, the other day I saw another Flash update pop up on Win 10 laptop in Edge. I don't even know why it's still needed.... What a strange ritual (now it's pushidng McAfee along).
Edit: FYI, quoting from the Wired, 2017:
Adobe itself acknowledged the transition [from Flash over to HTML5], though a bit less bluntly:
“As open standards like HTML5, WebGL and WebAssembly have matured over the past several years, most now provide many of the capabilities and functionalities that plugins pioneered and have become a viable alternative for content on the web.”
https://www.wired.com/story/adobe-finally-kills-flash-dead/
No. Just, no.
Flash had its problems, but why would anyone instead use another proprietary system that works on fewer platforms?
In an alternative universe where Silverlight, instead of Flash, had become the de facto standard before the iPhone, I suspect we would likely have moved onto something like OpenSilver instead of HTML5 as the backbone for web applications.
Flash was designed for tiny animations and somehow became an application platform. Sikverlight was actually designed as an application platform and it showed, in how much better it was.
2005 was a strange place.
Not true. silverlight never supported linux, unless you count the mono-based moonlight, which was buggy and didn't support DRM, so didn't work for the most common sites that used silverlight (like Netflix). Flash, on the other hand, supported linux for a long time.
My impression is that Silverlight's whole packaging & delivery model was envisioned to be more wide-spread but didn't take off. Microsoft was thinking that you could write one program, and then easily package & distribute it as a web app (via Silverlight), or a Windows Phone app, or a native Windows app, or an Xbox app. But... Windows Phone died, Xbox never grew from a game platform into a home multimedia platform, and C# did not achieve popularity for user-facing desktop apps. Plus Microsoft churned Windows APIs a few times.
I could easily see an alternate present where Silverlight was more successful for a longer time, if the timing was different or if a few events broke a different way. But I doubt that alternate present is better than this one.
With Windows Phone 7 they used it as a UI layer for just about 1 year, but Windows Phone 8 stopped using silverlight in favor of WinRT(~2011/12).
Xbox never supported silverlight as a development platform in any of its iterations.
You may be confusing the WinRT/UAP/UWP fiasco with silverlight.
It didn't? Because a lot of desktop apps I've used seem to use it, and lately it's even become a reasonable cross-platform option.
I know for sure it's pretty common for games; besides Unity, I know e.g. The Sims 3 (and maybe 4?) uses it pretty heavily (including for mods), as do some more recent games like Mount & Blade II: Bannerlord.
The DirectX controls you could use in Internet Explorer were a thing for a while.
The most interesting thing for me about all of this remains that WebAssembly ultimately became one of, if not the first write once, deploy anywhere standard that the major browsers agreed on (after implementing their own versions of it in a reasonably similar way).
I am struggling to remember actual Silverlight applications, the Playboy Archive, and I think the Library of Congress at some point offered part of its collection as a Silverlight application.
It was also a backdoorsy kind of way to limit cool new web applications to Windows. The Mac version was a feature laggard, when it did finally exist, and I don’t know if a Linux version was ever developed, but I’m pretty sure the answer was no for several years. Of course back then Mac and Linux support was considered irrelevant, and the idea of making a native app into a web app to support them wasn’t really taken seriously for a while either. Silverlight would have seen to that cross-platform future never coming to pass had Ballmer had his way, but well, a combination of market forces from iPhones, to HTML5, to Mozilla and eventually Google Chrome really kind of made something like Silverlight and eventually Adobe Flash moot. Flash at least had legacy applications and video streaming that kept it around, Silverlight had to bet on its own future and to a web surfer it just wasn’t different enough from Flash nor did it ever have the install-base of Flash.
Also, Netflix. The fact that Netflix required silverlight caused much pain for Linux users.
I guess it was right. Also Netflix.
I remember it being used for Roland Garros streaming and that's pretty much it, I don't think I ever encountered another website using it.
But they made not even a token effort at cross-platform, so it was a walled garden. People had only just broken out of the last MS walled garden, and did not relish entering another.
So if you desperately wanted to do the "render stuff client side to a canvas on the web using a good programming language" then Silverlight wasn't half bad. The programming model/layout/concurrency handling etc was every bit as good in 2005 as modern js/react is 15 years later, but the tooling was much better. Think of it as vb for the net. You could fire up your development environment and create a new interactive app and compile it to a single deployable file in minutes.
I used it quite a lot, but that was for things like internal apps. It was pretty good as a deployment model for e.g. a complicated dashboard on an intranet page.
http://opensilvershowcase.azurewebsites.net/#/Client_Server
Out of the box, the demo is responsive, Ctrl-F search works, zooming in and out of the browser works, my browser scroll settings and keyboard shortcuts are supported, I can load custom fonts through browser extensions. It's not perfect -- buttons are just divs, and there are a lot of divs. But I was expecting that this would just be a shim around Canvas designed to preserve a few old projects; I didn't expect the authors to have put the effort in that they did to do this correctly.
Getting cross-platform WASM toolkits to render to real HTML has kind of been my personal hill to die on recently, so it's just a pleasant, happy surprise to load up a cross-platform app and not immediately get a bunch of errors about how I need to enable WebGL to look at it. If OP or anyone else around had anything to do with the project itself, I just wanted to say that I noticed, and thank you for your care and attention to that detail.
If you want to go a step deeper, Flash was one of the original things that got me into programming, I currently do web programming, and I found Mozilla's project looking for that specific thing -- a Flash emulator.
I've thought about trying to be cute and petitioning them to let me take the name on a fork, but I don't really have any knowledge about writing emulators, so I unfortunately don't think I would be a particularly good steward or would have much to add to the project.
And I guess efforts like Mame have come farther with Flash emulation since then anyway, though I haven't checked in a while.
Now mobile is all drab flatness. Zero personality. If you have the creative choices for your apps, please make them have some balls again! Go for it!
The WPF apps I did at the time were just fantastic looking and gave me time to work on lots of great features.
The cutoff for reposts is a year or so: https://news.ycombinator.com/newsfaq.html