Microsoft Silverlight 4 vs. Adobe Flash 10.1
superapecommando writes "The richest RIA platforms today (and for the foreseeable future) come from clashing titans Adobe and Microsoft, whose Flash and Silverlight platforms both combine excellent tools for developers and designers, broad client support, strong support for server-side technologies, digital rights management capabilities, and the ability to satisfy use cases as varied as enterprise dashboards, live video streaming, and online games. And each has spawned new updates, to Flash 10.1/AIR 2 and Silverlight 4 respectively, which put them on a near-level playing field. Which one should you choose?"
Insert your own joke here.
No kidding!!! What do you say at this point?
Which one should you choose?
The one with the largest tits? No, wait, that's for assistants.
I don't fricking care as long as the page works? Yep, that's the one for the devs.
I would go with Flash just because most people have it. The install base is substantially higher than silverlight.
Ummm ... how are either of the above better than WebGL + natively JIT compiled Javascript ?
Neither one. Given the prices they are asking, particularly for upgrades after they have their hooks into you. You might as well sign over a significant percentage of your annual income over to their CEO's retirement package as you become an indentured developer.
Better for the community to seek and develop Open Source Solutions with equivalent functionality via web service architectures. Given the way the global economy and the environment upon which it is based is headed, we need cheaper and more efficient solutions, not ever more expensive ones that lock developers in.
Which one should you choose?
HTML 5. Until that's finalized, I luckily don't require any of the features these two hold as RIAs (like Video). And, if I had the need for video, I would only evaluate these two on their video capabilities and only use it for that component on my content. And since neither of them list Ogg Theora in their codecs on this review and that's what browsers I care about support so far in HTML 5, I'd have to weigh storing videos in multiple codecs ... everyone's really done such a good job of making me just not want to think about video right now as a web developer. I guess I suffer from video anxiety.
Side note: Anyone else find that these *world sites release similar yet different articles daily?
My work here is dung.
Firefox 3 doesn't support WebGL, and Firefox 4 isn't due out until November according to Wikipedia. Wikipedia's article about Safari doesn't even mention WebGL. Requiring Internet Explorer users to install Chrome Frame for its WebGL and JavaScript engine is just as much a logistical barrier as requiring them to install Silverlight.
I know there is a Java bias here, but as a Swing developer JavaFX really rocks. I like that I can do the same things as Adobe and Microsoft, but code in my preferred language. The enterprise tools are coming out now, but the ability to animate objects easily makes you think out of the box for some applications. If you are a Java guy, check it out!
"Ones and zeros were everywhere. I even think I saw a two!" - Bender
This is like comparing shit with corn in it, vs. shit with peanuts in it. Which one would *you* rather eat?
C|N>K
Plain old HTML plus AJAX where required, plus whatever parts of HTML5 are working now = superior functionality when compared to Flash/Silverlight, except if you are youtube or a pornsite.
JavaFX
Go green: turn off your refrigerator.
"Somewhat" is an understatement.
Flash is ubiquitous. You'd be hard-pressed to find a computer without it. With Silverlight, MS had to pay developers to build something with it and in many cases (NYTimes) thy still abandoned it. The availability is 98% Flash, 5-10% Silverlight.
As for waiting, HTML5 and strong support is years away. Don't be fooled by "Browser X scores 100/100 on Acid 3" -- I am working on a HTML5/CSS3 project right now and all browsers have major rendering bugs and omissions, most of them documented (aliasing for transformed objects, no clipping in some instances when border-radius is used and many more).
Even ignoring older versions of IE, developing any complex app for Firefox, Webkit and Opera is still a daunting task.
"HTML5" may be the newest buzzword, much like "ajax" and "web 2.0" but the reality is in many many cases Flash would give better results in less time and with broader reach.
CmdrTaco, I am stunned to see such a biased and ridiculously slanted summary coming from your desk. Come on... “both combine...strong client support”? Are you kidding? Silverlight only runs fully featured enabled on Windows. Mac users suffer sub-par SilverLight performance due to issues with hardware acceleration, Linux users are left in the cold, and even the Windows technology has an awful track record. Let's take two large rollouts of SilverLight for example: Major League Baseball and Netflix Instant Play.
/., I would think the fact that SilverLight does not play on any open players or Linux distributions would be enough to reject this summary's premise alone. Flash, in spite of all the horrendous attributes inherent in that technology, at least actually plays on most platforms and mobile devices. Thus, I respectfully disagree with your primary assertion that these two technologies are even on the same playing field.
MLB: It does not take long to see that MLB had such an uproar of customer complaints about SilverLight that the MS player was quickly “benched”: http://news.cnet.com/8301-1023_3-10212843-93.html
Netflix: The Netflix subsidized SilverLight player has resulted in an absolute flood of complains and a continual stream of glitches: http://news.cnet.com/8301-13860_3-10199350-56.html http://www.wired.com/gadgetlab/2009/03/netflix-updates/
Of course, being that this is
Between HTML 4 being published and HTML 5's beginnings, the W3C changed their process. What used to be called a Recommendation (the level HTML 4 reached) is now called Candidate Recommendation. In order for a specification to reach Recommendation status now, it has to have two interoperable implementations. That means waiting for browsers to fully implement it in a reasonably bug-free way. HTML 4 didn't have that final barrier to overcome before it was published as a final recommendation, but HTML 5 does. That's why the final publication date is so far off. HTML 5 is expected to reach Candidate Recommendation status - the level of maturity that was required of HTML 4 before it was considered "finished" - in 2012. So if you are comparing HTML 5's maturity to HTML 4's, then 2012 is the date you should be using for HTML 5, not 2022.
Bogtha Bogtha Bogtha
Silverlight is a cross-browser, cross-platform, and cross-device plug-in
The page you linked admits that "there is currently no Linux support". Moonlight, a Free clone of Silverlight, is good for displaying "This page requires a newer version of Silverlight" notices.
For major LOB apps, the kind that needs to keep state on the client to a degree, the kind that deals with data from a large number of data sources, say Oracle plus a couple of WebService servers integrating some financial data from a IBM system-i solution etc, the choice is IMNSHO rather easy. You go with Silverlight. If it is internal.
Typically such apps are developed by moderate sized, or even small-ish development teams who have no need to deploy outside of the corporate network. Silverlight has, by a decent margin at 4.0, the upper hand on Flash. The tools and the programming language are simply better - maintaining C# code is far easier than maintaining Actionscript code. C# is basically just Java, to the degree that you can almost copy and paste Java and compile it with a C# compiler (not that I recommend that, there are things you'd miss that you should make use of in C#).
Some people would recommend you do this in Javascript/AJAX etc, they are insane or have never developed a serious LOB app. You really, really should not even try. GWT makes it a little less painful, but only a little so. There are still a significant amount of differences between browsers, even when compiled by GWT to browser-specific Javascript, to make GWT a maintenance nightmare.
Flash/Flex (haven't moved on to the latest one) is good if you need to integrate with the external world. For suppliers and partners you can just mandate Silverlight, but for the general public you should go with Flash. On the other hand, if your app exposed to the general world is of a high complexity with client state management etc, you might want to re-think the approach in general.
But then flash does run on Linux, albiet poorly compared to Windows, and silverlight does not. I have to keep a windows box around just for Netflix. And I've already tried moonlight and Netflix refuses to touch it.