Back during the era of certainty, the time of proprietary source code and software product roadmaps, Microsoft was a company you could bank on. Microsoft would announce a new version of Windows or Office, and partners and customers would wait – often through headline-friendly slippage – to swap out the old for the new. The …
Silverlight has no use
For the web, Silverlight is dead. Everyone knows this. The web is HTML5.
The only other use for Silverlight was for Windows Phone. But now that's dead too, with Windows Phone 7 getting practically zero sales, and becoming the biggest flop in mobile since Iridium crashed.
There is nowhere else for Silverlight to go, except to the grave.
Now who are all these idiots who ask Microsoft executives if they should develop in HTML5 or Silverlight. Are they idiots or what?
you made yourself sound like a right knob, dont get so angry about things you'll get high blood pressure.
Silverlight does have a use
Any website which broadcasts copy protected content, e.g. Netflix, ITV etc. needs a way to control the content so people don't just rip it out of the stream and distribute it. Silverlight and / or Flash fits the bill because they contain DRM controls. Not just DRM but the content could be in H264 or VC1 with streaming failover to improve quality and experience when bandwidth changes.
You simply can't do the same in HTML5. Different browsers can't even decide which codec to use let alone supply a DRM framework on top of that or negotiate data delivery rates.
Even aside from that if you are developing an app in Silverlight / Flash you more or less know it will function identically in any browser you host it in. It will render the same, it will behave the same, it will be a predictable and testable application regardless of the browser.
All that said, unless a site *needs* these sorts of features it would be better off as HTML. Not everyone will have the plugin. Some platforms (e.g. phones & tablets) may never get the plugin.
But then you hit the problem that Flash / Silverlight solve - every browser does things slightly differently - the CSS is different, the interpretation of HTML is different, the JS is different. Half the "showcase" demos put out by browser makers to promote HTML5 in their browser don't even work properly in rival browsers.
These issues are not insurmountable but it requires something like an AJAX library or GWT to stand any chance of producing something which works reliably in any browser. AJAX development is especially horrible and while GWT is easier to develop with it doesn't fix issues with CSS and isn't really suited to "rich" applications which have animations and other effects.
Ajax coding isn't that bat
> it requires something like an AJAX library or GWT to stand any chance of producing
> something which works reliably in any browser.
I'm sure that there are plenty of differences between browsers for cutting-edge html5 features. However for "vanilla" ajax/html/css/js things are much easier than they used to be.
We develop a pretty complex 100% ajax erp application and only worry about getting code running on IE and Firefox, the latter takes care of all the other "W3C" browsers.
In the beginning (2007) Safari, Chrome, Opera and the variations mobile incarnations all had their share of problems. We just ignored them and waited a couple of years. Magically our app started working everywhere.
Most of the differences between IE and the "W3C" browsers are well documented and something like JQuery will take care of them. Though you should really ignore IE6 if you can and ideally only worry about IE8 and above.
no, Silverlight is useless
Flash is another matter. Because adobe as made such an extensive effort to get the installed flash base it has, flash can be useful, but we are not talking about flash, we are talking about silverlight.
I will agree that using HTML "that is not a version number" 5 specific features is silly until it gets a reasonable level of standardization and deployment.
Not the end of the story yet...
This turning out to be quite an interesting tale for Microsoft, as they go through organisational culture change and become more global and customer focused.
You cannot deny that silverlight looks very good where it has been deployed and it is very easy to pick up, but HTML5 is looking good at this stage and is on track to become the big fish in the pond.
I reckon MS and Adobe are really going to town rewriting their approaches and frameworks to everything they have based the customer facing end of business on. Be prepared for flash and silver to become more interwined and brought into line with HTML5 in Windows8.
With both Adobe and Microsoft reshaping their strategy and challenging theur developers it could pay off and allow them to hit back at the critiscim from Apple and devs who have lost faith.
Time for the next round...
"I get a lot of questions: 'Should I use Silverlight or HTML5?',"
Well, there is only one answer. You use HTML5 because it is the closest thing to an industry-wide standard. This stops your company becoming dependent on MS and prevents your customers becoming more dependent, allowing them to re-tool as new technologies take hold.
If the standard/cross-platform tech of choice can't do what is required, look for another. Only in extremis should one be choosing a technology/implementation that is proprietary.
I realise that is a pipe dream, but dreaming is the only thing that keeps me sane sometimes.
Now if you will excuse me, I have to go back to shouting at the sacks of vomit that are IE7 and IE8.
RE: 'Should I use Silverlight or HTML5?',"
Hitting the nail square on the head:
`This stops your company becoming dependent on MS and prevents your customers becoming more dependent, allowing them to re-tool as new technologies take hold.`
But, then again, you have Damagement, which still has not learned the IE6/FrontPage lessons of vendor lockdown.
Any web developer worth his (or her) salt, will do everything possible to insure that they are not shackled to M$.
RUN, don't walk away from M$ and Silverlight. You would be a fool not to.
BTW, `sacks of vomit`?!, you are being TOO KIND!!!!
A web environment. Will it move to HTML5 ? Bill Gate's baby and he does hold a lot of shares...
Can anyone name the top 5 Silverlight sites that most El Reg readers will recognise ?
Microsoft Is Being Smart
If you've written WPF programs, you probably saw how slow they were! i.e. I had an 8 core i7 box and the 3D graphs, from Telerik, were pokey! So 3D WPF graphics suck!
And that highlights the inherent problems of WPF and Silverlight: they don't enable performant applications!
For example, if you look at C#, it has to stop all the threads in the App Domain when it garbage collects! That issue was supposedly worked on in .NET 4 but, again, .NET is, for the most part, a slow platform. For example, when I did database timing, .NET was 10 to 20 percent slower! And, when we implemented MVVM applications, my team had to use memory profilers to eliminate hundreds of .NET memory leaks since .NET bindings, etc..., weren't giving up their references.
At the end of the day, HTML5 is where it's at since the average person doesn't have the time and money to write performant Silverlight or WPF apps, it's simply not possible. And, If you doubt that statement, look at what Charles Petzolds talks about since, essentially, he proved that the MVVM model doesn't scale; thus, from those comments, I concluded that XAML fragments memory and code too much since it encourages a million tiny objects and a million non-contiguous ( like lambda expressions ) pieces of code.
IMO, Microsoft seems to have reached this same conclusion:
"IE10 continues on IE9’s path, directly using what Windows provides and avoiding abstractions, layers, and libraries that slow down your site and your experience"
i.e. WPF and Silverlight took abstractions and layers to their extreme and to the point where good performance was impossible or, put another way, to the point where the web browser's UI engine left WPF and Silverlight in the dust.
Besides those issues, Silverlight doesn't interoperate with host apps that well; i.e WPF and Silverlight don't support vector graphics at their core! So you can't copy and paste Silverlight content into other content "out of the box;" That's why the move to HTML5 has to happen since browsers are going to support "rich content" copy and paste.
In closing, I wish that .NET didn't create more problems than it solved but, these days, I wonder.... ;-)
RE: MS is being smart
"If you've written WPF programs, you probably saw how slow they were! i.e. I had an 8 core i7 box and the 3D graphs, from Telerik, were pokey! So 3D WPF graphics suck!"
Well, any managed code stuff from MS is the same: they all totally suck when it comes to performance. As a matter of fact Microsoft inherently sucks at performance optimization, they always did, they always will, it comes from the nature of their approach - let's make it easy-to-sue, flexible framework -, they literally have no clue about such things.
"Asked whether Microsoft is backing off Silverlight as a cross-platform framework, "
Since when in the seven hells was Silverlight a cross-platform framework?
Is has never been viable on Linux (Moonlight doesn't count since it is always versions, and features behind, the windows counterpart.)
Silverlight works on Mac
So it is cross-platform.
Heck if it runs on XP and Win7, then one can spin that as "cross-platform".
What it isn't is a patent-free standard and neither you nor I can run out and implement it. We could (if we were mad enough) implement our own HTML rendering engine, and that really gives the answer/power/competition/freedom.
Even when MS does force a standard through, it contains patent bombs and one still can't implement it fully (e.g. docx). In such an instance one should demand ODF.
It's cross platform because
.. there's a mac version. Not sure how much it trails the PC version, but it's there.
Not on my Mac it's not
Who needs another Flash for more pointless animations and bloody adverts?
Good point, I suppose it comes down to your definition of "cross-platform".
As far as I am concerned it if doesn't work on the big 3 OSes (Win, Mac, Linux...yes yes yes, I know I said "Big" but stop laughing) with roughly equal performance and feature parity then it is not cross-platform.
But it could always be argued that it is cross-platform because they do have performance and feature parity on their supported platform (which doesn't include Linux because moonlight isn't official).
Meanwhile, in the real world...
... the important question has to be, has anybody actually seen a website that uses silverlight? Other than the microsoft website, I haven't.
I don't even have silverlight installed.
Really nice example of a silverlight website,
I believe most apps in Windows Media Center are built with silverlight as well.
Silverlight is usable on PC and Mac, btw.
I haven't installed it and the only site that has ever asked me to is the Xbox live website. I'd actually assumed that Silverlight wasn't being used anywhere and Microsoft were still trying to convince people to use it.
those bolting silverlighters
"Microsoft cannot afford to see Silverlighters bolt en masse to HTML5 – or even return to Flash"
I'm sure returning to Flash is what they are worried about. If HTML5 takes off, then MS can produce their own implementation. While Flash remains dominant, they're stuck with Adobe's implementation. They may laugh at Jobs' flash-free platform, but not too loudly because deep down they share the sentiment. Adobe's implementation sucks and Gnash proves just how hard it would be to produce a viable alternative.
Whatever Silverlight may be now (a phone thing? a PR exercise in keeping devs sweet?), it was originally a Flash killer and it was this idea that originally persuaded the execs to spend real money on version 1. In fact, I'd go further. I'd argue that Microsoft's new-found passion for HTML5 stems from their realisation that Silverlight wasn't going to manage to kill Flash on its own, so they needed to open a second front. So they opened their wallets again.
Microsoft have spent a lot of money in recent years trying to kill Flash. Apple are risking marketshare in order to kill Flash. Google spent $120m on a codec which they promptly gave away to the world for free, in order to kill Flash.
Couldn't happen to a more deserving technology.
If MS had any sense
they'd modify Visual Studio to produce genuine HTML5. Then they might just have the first MS software product in 15 years that I'd actually consider purchasing for its utility rather than having to to read my own data or work with locked in customers.
I said 'If'.
HTML 5 - Not yet
HTML 5/CSS3 will be the eventual winner because of the scale of committed support. But my guess is that all those cheering HTML 5 to the rafters don't have web sites with customers.
Why? Because any site owner will tell you there are almost no HTML 5 capable browsers visiting (maybe geeks sites are the exception which proves the rule). This is not a surprise as only the geeks have bothered to to download Chrome or Firefox 4 or IE 9 or... The great unwashed are still on way old browsers. Until that changes, it remains CSS2 and Flash unless you can afford to maintain two versions of your site or lose visitors.
Just to point out that IE9 doesn't run on any operating systems I have, e.g. I don't have Vista or Vista II. I do have a Mac with XP VMs (Vista/Vista II takes up too much disc space, circa 15Gb, in comparison with XP's 'svelte' 3Gb).
Despite everything they say, Vista II isn't nearly as widely implemented in the real world.
Current figures, for what they're worth, from statcounter are
FF4 7.30 %
I didn't know there were that many geeks!
HTML5? Ho ho ho...
The biggest problem I have with HTML5 on a professional level is that it's going to take a long time before there's enough push in the large public organisations that rely on IE to get a HTML5 capable browser rolled out. And this, unfortuantly, will always be the case. Whilst the public web can forge ahead at pace, companies can't keep up; some haven't even got a upgrade strategy for Windows 7 yet...
And this is what's ultimately going to keep the older technologies about: we have to develop software *now* for customers who aren't going to be upgrading any time soon, so we have to go with the older tech, no matter how much we'd like to forge forward with newer stuff. We've already had to do some back-testing on IE6 for one customer who didn't have an upgrade plan in place to roll out several thousand desktops with IE7... (let alone IE8...).
As long as the public sector drags it's feet, then the poorer some web-based intranet apps will be.