Flash vs. Silverlight: What Suits Your Needs Best?
With the release of Silverlight 1.0 and its subsequent versions, a debate started among designers and developers regarding choosing between Flash and Silverlight. Silverlight faces difficulties in capturing the market because of the maturity of Flash. However, Silverlight has managed to keep up by including certain features that designers and developers have always wanted to see in Flash, such as search engine optimization. In this article, we will discuss some of the technical differences between Flash and Silverlight to help you choose the technology that best suits your needs.

Animation
Flash uses the frame-based animation model. In frame-by-frame animation, we create an object for each frame to produce an animation sequence. For example, if you want to move something across the screen in 3 seconds, calculate how many frames 3 seconds will take, then calculate the matrices required for each frame along the way. Keep in mind that the player won’t actually maintain a frame rate unless you embed a blank audio track; otherwise, 3 seconds might turn out to be 2 or 6 or 5.
Silverlight is based on the WPF animation model, which is time-based instead of frame-based, so you define the start and end conditions, and it figures out how to do it. No need to deal with matrices like with Flash. Also, no need to calculate the positions of objects in various frames.
File Size
Flash uses a compressed format, and text and images are embedded in the movie, hence the file size of a Flash component is relatively small.
Silverlight uses XAML for its description language, and it is non-compressed, so the size of a Silverlight component is usually larger.
Scripting
ActionScript is used to program Flash objects. ActionScript is an object-oriented language with a full range of controls for designing user interfaces. And it can be integrated with back-end technologies that use other languages and frameworks, such as PHP, ASP and Ruby On Rails. It comes with a huge, powerful class library for developing online browser-hosted applications and stand-alone desktop applications.
For Silverlight scripting, you can choose from among a number of programming languages such as Visual C#.Net and Visual Basic.Net, including client-side scripting with JavaScript. C# and VB.NET can be used to write managed code that runs on and uses all of the enhancements and capabilities of Microsoft’s .NET framework.
Video And Audio
Flash supports multiple video formats. The latest codec is very high quality, and the bandwidth usage is nice. There is one problem, though: if you create a tool that outputs Flash content, the formats it supports aren’t really used by anyone else. The original video codec, Sorenson’s proprietary H.263 implementation, is a mutant version of H.263. The compression follows the spec fairly closely, but a bunch of features were left out, and you can’t exactly just go find complete specs on how to build your own encoder.
Silverlight implements the industry-standard VC-1 codec for video, and supports WMV and WMA. Just about everyone already has Windows Movie Maker, but if someone doesn’t, it’s not a big deal because Microsoft makes available a free SDK encoder for producing WMA and WMV. So, not only would you be using formats that people would more likely be able to encode themselves, but Microsoft provides your product with SDKs if you want to do the encoding yourself.
Sound Processing
ActionScript offers a set of sound classes that can be used to generate and control sound in a movie. You can add sounds from the library while the movie clip is playing and control those sounds. If you do not specify a target when you create a new sound object, there are methods to control sound for the whole movie.
Silverlight doesn’t have the low-level audio APIs you would need to write an audio application in the browser. It doesn’t even support playback of WAV files because .NET has very little audio playback support.
Accessibility
Flash provides rich accessibility features for those who have hearing and vision problems or who rely on keyboard shortcuts. Providing captions for video solves accessibility challenges for people who are deaf and hard of hearing, but people who are blind or have low vision or other physical disabilities need the video playback controls to be keyboard-accessible and to function properly with assistive technologies such as screen readers and screen magnifiers. Users who rely on keyboard access can use a variety of familiar shortcuts to control video. Buttons such as “Play/Pause,” “Stop,” “Rewind,” “Mute” and “Closed Captions” can be tabbed to and activated with the spacebar. Slider controls such as for volume and playhead position controls can be accessed via the arrow keys, and the “Home” and “End” keys can be used to skip directly to the beginning or end of a range. The volume slider also accepts numeric keys to set playback audio levels in one quick step.
Silverlight 3 is the first browser plug-in to provide access to all system colors, allowing people with partial vision to use familiar operating system controls to make changes, such as switching to high-contrast color schemes for ease of readability. These features are far fewer than those provided by Flash.
Platform Compatibility
Flash supports Windows Vista/XP/2000, Windows Server 2003/2008, Mac OS 10.1/10.5 (PowerPC), Mac OS 10.1/10.5 (Intel), Linux 5, openSUSE 11, Ubuntu 7.10 or later and Solaris 10.
Silverlight supports only Windows Vista/XP/2000, Windows Server 2003/2008, Windows Mobile 6, Mac OS 10.1/10.5 (PowerPC) and Mac OS 10.1/10.5 (Intel). Because Linux and Solaris support is missing, users of those operating systems won’t be able to experience Silverlight on their machines.
Text Representation/SEO
Flash stores fonts using shape definitions and the player doesn’t understand TTF, hence we cannot separate the text layer from the movie. Typically the text written on a flash component was not SEO friendly however Adobe has made the modifications to Flash so that it will be indexable, and the search engines have begun to index Flash.
Currently Google is the only search engine that is noticeably reading Flash files. They have worked closely with Adobe to develop the right toolset for the Googlebot in order to read the files for indexing. Yahoo is working on it and MSN is working with their own format, Silverlight, so they probably won’t be developing the toolset necessary to read Flash files.
To read more about how to make Flash SEO friendly, please read the following articles:
In Silverlight applications, user interfaces are declared in XAML and programmed using a subset of the .NET Framework. XAML can be used for marking up the vector graphics and animations. Text is deployed on web server as separate entity and can be read and accessed separately. Textual content created with Silverlight is searchable and indexable by search engines as it is not compiled, but represented as text (XAML).
Supported Image Formats
Flash supports almost all image formats.
Silverlight supports only PNG and JPEG file formats. Some other file formats are supported by Silverlight but in a limited way. A full list can be found here.
Socket Programming
The XMLSocket object implements client sockets that allow computers running the Flash player to communicate with a server computer identified by an IP address or domain name.
To use the XMLSocket object, the server computer must run a daemon that understands the protocol used by the XMLSocket object. The protocol is as follows:
- XML messages are sent over a full-duplex TCP/IP stream socket connection.
- Each XML message is a complete XML document, terminated by a zero byte.
- An unlimited number of XML messages can be sent and received over a single XMLSocket connection.
Silverlight doesn’t support socket programming. Silverlight supports sockets programming through the System.Net.Sockets namespace. Silverlight supports asynchronously sending data back and forth across a socket over ports ranging from 4502 to 4534. Silverlight supports cross-domain socket communications between a Silverlight application and any server, provided that a special security policy file is in place on the server.
Webcam Support
Flash has webcam and microphone support for live video and audio transmission, and using them is really easy in Flash. It takes only a few lines of ActionScript code to invoke the camera object.
| Camera.get | Returns a default or specified camera object, or null if the camera is not available. |
| Camera.setMode | Sets aspects of the camera capture mode, including height, width and frames per second. |
| Camera.setMotionLevel | Specifies how much motion is required to invoke Camera.onActivity(true) and how much time should elapse without motion before Camera.onActivity(false) is invoked. |
Silverlight doesn’t support webcam or microphone.
Deployment
The Flash deployment package contains only a single Shockwave (SWF) file, and all images, text and animations are incorporated in this file. Because of the compressed nature of a Flash component, its images and text are not indexed by search engines, and thus not searchable.
The deployment process of Silverlight is far more complex; all individual components need to be deployed separately. The following components typically get sent to the client for each Web request of Silverlight:
- XML files,
- DLL files (if necessary),
- Silverlight.js file,
- Any other JavaScript file,
- Resources (images, audio, video).
Read the full documentation on Silverlight deployment.
Windows Application
A Flash movie can be compiled into a Windows application and run as a standalone EXE file. It can also be played on a desktop that has an appropriate Flash player.

Silverlight doesn’t support playing the movie as a Windows application.
Media Streaming
Flash provides no such service to host the content and application with them. Thus, building a video website with Flash is not as cost-effective as building one with Silverlight.
Microsoft Silverlight Streaming by Windows Live is a companion service for Silverlight that makes it easy for developers and designers to deliver rich media as part of their Silverlight applications. The service allows Web designers and developers to host and stream cross-browser media and interactive applications that run on both Windows and Mac. This service can be combined with Microsoft Expression Studio and other third-party tools to create and develop interactive contents.
Silverlight Streaming by Windows Live is currently in beta testing and offers 10 GB of free hosting for rich-media applications.
Conclusion
Selecting the right technology for rich Internet applications is often critical, and choosing between Flash and Silverlight depends entirely on your requirements. If you expect that some of your users will be on Linux or Solaris, then you should go with Flash. If you want your website to be indexed by search engines, then Silverlight may be better.
Besides, as Doug S. is points out in the comments, it’s worth noticing that a minority of web users actually have a Silverlight plugin installed on their machine, while most users do have Flash-support. The Flash Player 9 and higher support streaming of the H.264 video codec which means anyone with a video program that can output an MP4 can stream to Flash. There are literally hundreds of free apps on Mac, PC and Linux that can do this. It’s also important to mention that the latest version of Flash Player supports 3D rendering while Silverlight does not and that SWF, FLA, FLV, and AS are all open-standard formats, while Silverlight is 100% proprietary.
The following table summarizes the features discussed above. Rather than including arrows to indicate whether each platform has a particular feature, we’ve simply marked “better” to show the areas in which each technology beats out the other.
| Features | Flash | Silverlight |
|---|---|---|
| Animation | better | |
| File size | better | |
| Scripting | better | |
| Video/Audio | better | |
| Sound processing | better | |
| Accessibility | better | |
| Platform compatibility | better | |
| Text representation/SEO | better | |
| Supported image formats | better | |
| Socket programming | better | |
| Webcam support | better | |
| Deployment | better | |
| Windows application | better | |
| Media streaming | better |
Further Resources
The following articles are suggested for further reading:
- An Overview of Silverlight
- Silverlight vs. Flash: An Analysis Report
- Flash vs. Silverlight: Theming and Styling
- Flash vs. Silverlight: Words and Numbers
(al)
















Cihan Yakar
May 10th, 2009 3:07 amSilverlight 3 supports standalone exe. Just right click and select send desktop..
Reader
May 10th, 2009 3:40 amJusta few notes
- Silverlight can be developed on Mac. See eclipse4sl (Also the cool part of Visual Studio is that you can connect the debugger into a website that uses the same .xap as the project)
- Silverlight 3 supports standalones, better text, better codec support, 3D etc.
- You can develop silverlight on other language (there has been some playing around with php also)
- If your host doesn’t support silverlight you can host your apps on SilverlightStreaming that offers 10GB of space
Overall this was an article filled with misleading information. I would have expected a little more research from SM
Lilian
May 10th, 2009 3:47 amAn example of a strange whole flash site: http://www.darkyria.com
sama creation
May 10th, 2009 5:04 amvery nice article
adobe flash is the best
Héctor
May 10th, 2009 5:22 amI’ve just seen this article, and after reading the first point, Animation, I laughed and decided to stop reading it into detail…
“No need to deal with matrices like with Flash. Also, no need to calculate the positions of objects in various frames.”
Well, there is something called tweens, you know… And taking a quick glance into the article shows a lot of wrong and missing info out there… no mentions of AS3 binary sockets, no mention of AIR, no mention of Out Of Browser Silverlight mode, etc, etc.
Bob Gries
May 10th, 2009 5:32 amI’ve played WAV files even point-to-point in VB6–that was about four versions ago from VB.NET 2008. Sorry, I can’t imagine that what is said about Silverlight playing audio is close to correct.
freediverx
May 10th, 2009 5:36 amLooking back at the mess businesses created by relying on proprietary Microsoft standards (IE6 development), why in the world would we want to repeat the same mistakes by accepting Silverlight as a new de facto standard?
Even if Silverlight offered an overall better solution right now (it doesn’t), history teaches us that embracing a closed Microsoft solution will inevitably lead to a dead end, stuck with an outdated, stagnant and incompatible platform while the rest of the world continues to innovate around us.
While this article seems informative at first glance, I can’t help but sense a strong pro-Microsoft bias.
Personally I wish more companies would embrace AJAX, DHTML, javascript, and CSS for their enterprise web development. To the extent that closed solutions may allow similar end results with less time and effort, I’m a lot more comfortable relying on Flash than on any MS product.
Bob Gries
May 10th, 2009 5:37 amIt looks like Silverlight is a free download as is Visual Web Developer Express and Visual Studio 2008 Express while Flash only has a trial for a product that costs hundreds of dollars.
flash pro
May 10th, 2009 5:42 amThis was a sloppy, amateurish, and biased comparison.
My guess is that you’re a programmer who understands nothing about multimedia and is excited to finally try it because you can do it in .net.\
You praise features in Silverlight 3 which was released only a few weeks ago. In contrast, most of your Flash info is from 2004-2007. You make no mention (or are completely unaware) of Flex, AIR, FMS, or any advanced level Flash tools.
Animation: Flash is far superior with frame-based animation, the (time based) motion editor, and several tween-code libraries. There’s also After Effects and Papervision integration, as well as several 3rd party animation tools for Flash. There’s millions of Flash-based cartoons. In contrast, I couldn’t find a single Silverlight-based cartoon.
Scripting: Yes, Actionscript. But also MXML, XML, FXG, and Javascript.
Video and Audio: H.264 has been supported for almost 2 years; a codec so standard that every major Silverlight video project (except NBC stuff) has switched back/over to Flash. Also, nobody on Mac/Linux has Windows Movie Maker and you didn’t actually say anything about audio.
Sound Processing: The diagram has nothing to do with Flash or Silverlight. It also links to prepresstraining.com (???)
Text Representation/SEO: Text can be separated in Flash for SEO. Most of the time it’s not necessary.
Socket Programming: I don’t know much about sockets, but the logo in your image is Macromedia Fireworks from 5+ years ago.
Deployment: Flash is versatile – you can build all within a single file (as mentioned). But most Flash devs use external resources, XML, JSON, etc. Flash swfs can also load other swfs, to allow for modular applications.
Windows Application: you completely overlooked AIR, which is a deploy-once, multi-platform format.
Media Streaming: Flash Media Server has been around 5x longer than Microsoft Silverlight Streaming.
Shane
May 10th, 2009 6:03 amThe Flex SDK is free.
Flex is a more developer/web-application centric development platform that generates Flash content.
The article should have talked more about Flex, but in the end make up your own mind. I come from a Microsoft .NET background, but I’m using Flex at the moment (have never used Silverlight). Seems quite good.
Jeff Putz
May 10th, 2009 7:16 amIt saddens me that so many people treat this like religion and make asinine comments about what Microsoft is or intends to do. If you don’t even care to learn about the merits of a platform, it’s not surprising that so much of what makes its way to the Internet is crap.
Say what you will about Microsoft (without having used any of the tools, I’m sure), but the NBC Olympics site to me was pretty solid validation about the robustness of the platform. Seeing as how they’ll use it again for the winter games, this time streaming HD, I’m pretty sure that NBC was pleased with the results.
I like Flash, but I’ve never been a big fan of the development tools.
john
May 10th, 2009 7:39 amI’ve used silverlight before and I was very impressed. Video and audio are quite superior to flash. When I tried flash video again, I immediately went to search for that exact video in silverlight.
TJ Holowaychuk
May 10th, 2009 8:14 amMicrosoft is terrible I would never install or touch Silverlight
Aaron Martone
May 10th, 2009 8:24 amWhenever I think about supporting a Microsoft technology, I just remember one thing: “Microsoft Internet Explorer 6″. And now, I don’t have such a hard choice when it comes to giving Microsoft the middle finger.
Long live Adobe. The only thing Microsoft has one upped on Adobe is that their support costs $250/call, while Adobe’s is a whopping $500/call. Still, I’m the kind of person willing to pay more for non-proprietary quality, and I love Adobe’s apps, Flash included.
Fact checker
May 10th, 2009 9:16 amThis article is a piece of sh*t with an obvious serious lack of research behind not to mention the comments are just a bunch of zealots on a closed minded agenda (with VERY few exceptions).
It would be foolish to base any decisions on this article.
Akira U.
May 10th, 2009 9:38 amWow, this article touched the sensitive bone of programmers/designers on both sides!
I think it was a very informative article. Thank you so much.
For those of you who think Flash is too hard, you could start with Swishmax.
cheers, from Tokyo
Videometry.net
May 10th, 2009 10:11 amAt first I considered this article biased towards Silverlight, as it makes animating in Flash sound complicated: “if you want to move something across the screen in 3 seconds, calculate how many frames 3 seconds will take, then calculate the matrices required for each frame along the way”. Calculate matrices? Wtf? Has the writter ever animated anything in Flash, or indeed ever animated anything? (In 12 years I’ve never thought to myself I want an object to move for 3 seconds, more like I want it to synch with this sound track (timeline) or until it feels like the right speed. Oh, no mention of the bones system either I see.
When we get to the image formats he goes the other way, that Flash “supports almost all image formats”. Flash IDE can import most formats, but runtime we’re talking .png, .gif and .jpg (ok, at a push you could concievably read data from other formats if you write your own AS3 parser).
Now I feel the writer is like a bad referee, who awards a penalty to one side, and then one to the other for no reason, just to even things up. So, not biased, just useless! Full of misleading or inaccurate information. Heaven help anyone who actually was looking for the differences between Flash and Silverlight.
I can’t comment on the SL anomalies, but I would agree that talking about SL 3 is like talking about Flash 11, i.e almostirrelevant until it’s released.
TheCosmonaut
May 10th, 2009 11:42 amI’m glad that there’s some competition for Flash. Although I love it and have been using it for years, I feel like the improvements in CS3 and CS4 have come with a lot of extra baggage which doesn’t have me super happy. Let me just say that the trend has me a little worried :) As far as developing goes, if you’re a .NET guy, then it sounds like SL is for you. Personally, I much prefer LAMP and so developing for Flash is more natural for me. Either way you cut it, I would be REALLY nervous about deploying a SL site simply for the plug-in penetration issue.
BTW – if anyone is interested in a more in-depth discussion and exploration of Flash SEO, I wrote a post on it here: http://www.thecosmonaut.com/2008/11/09/5-steps-for-building-a-seo-friendly-flash-site-using-swfobject-and-swfaddress/
ryguy
May 10th, 2009 11:43 amSilverlight stikes out with MLB. See this article:
http://blog.flashden.net/general/home-run-for-flash-video-player/?ref=ryguy
Major League Baseball (MLB) did a u-turn on Microsoft Silverlight as their choice for video distribution and went back to Adobe Flash instead
Jeff
May 10th, 2009 12:16 pmOne thing to note is that Microsoft is using their deep pockets to purchase interest in Silverlight. It’s not that Silverlight’s not a fairly robust platform. But getting adoption has been Microsoft’s biggest hurdle and they’re paying most of the major companies who’ve used Silverlight (NBC, MLB.com, etc.) to use their platform.
Ron
May 10th, 2009 12:19 pmLets keep it simple Flash for the web (animation, streaming, etc..) and Silverlight to replace ActiveX (well until an OSS competitor arrives then byebye Silverlight). That is all move along.
please stop
May 10th, 2009 2:40 pmfan boi garbage.
Pete
May 10th, 2009 2:45 pm@Jeff surely you realize Adobe is doing the same thing.
@ryguy and the MLB experience this time around blew as well with just as many complaints if not more. Maybe they’ll try JavaFX next time and get three strikes? I don’t think the problem there is with Flash or Silverlight.
As to the rest of the folks who pick Flash because it isn’t proprietary: what are you thinking? Surely you realize that Flash is just as proprietary as any other RIA solution unless you stick with pure W3C HTML and JavaScript.
Agreed on SL3 comments for now. It would have been nice if the article at least compared Silverlight 2 then to the current version of Flash/Flex. The article didn’t even do that.
indepth
May 10th, 2009 3:04 pmthis is really the most superficial article about flash and silverlight i’ve ever read (including most of the comments). as an author, you’re entering a minefield making these kinds of comparisons unless you have profound, in-depth and unbiased information about each technology. such articles do little to help understand both advantages and disadvantages but rather upset fanboys of each technology. in general, smashingmagazine should really improve the quality of their information or stick to articles like “100 awesome wallpapers” etc.
subetha
May 10th, 2009 3:05 pmI wonder what your background is: Are you a programmer or a designer?
I’m sorry, but I think you have missed the fact that the script behind SilverLight is .NET, meaning you have to pay a premium for hosting. Where as flash base solutions can be hosted on all servers.
You also stated that flash animation was frame based. I rarely use frame based animation in flash anymore. I do it all via actionscript. So I would say that they are on par here…
Video and audio support, yes SilverLight supports WMV and WMA, but not everyone can play them. So you have to download another plugin to play them. Sorry, but I like that fact that once you have the movie in flv/f4v format, all you need to play is the flash plugin THAT is already installed on almost every computer out there. And as you stated, SilverLight has little to NO support for audio playback. So I think you need give Video/Audio back to flash.
I agree with you when you say that flashes SEO is poor, but lets hope they fix this one of these days.
Cheers.
Jeff Putz
May 10th, 2009 3:24 pm@125: Wrong. You can host a Silverlight app on a Gameboy, if it’s a Gameboy that can serve HTTP. You don’t know what you’re talking about.
Simon
May 10th, 2009 3:26 pmSilverlight, making crappy .NET developers think they are creative since ’07.
EDIT: For some background, I work with 3 .NET developers who don’t have a creative bone in their bodies. Yet they open up Silverlight and all of a sudden they think they have the qualifications to talk about front end.
Tim
May 10th, 2009 4:13 pmSeriously, it’s weird how many people will die saying “I hate microsoft” and have the phrase on their tombstone.
I mean really…is microsoft really hitler?
Jai Ivarsson
May 10th, 2009 4:41 pmAs a video professional I would like to paraphrase what many people have already commented on.
VC-1 codec is a video standard in no ones world except Microsofts where as h.264 and mp4 is a standard everywhere. In fact Flash supporting H.264 is what made me change from web video in quicktime to Flash as pre H.264 flashes codecs where twice as large as quicktimes.
Xarr
May 10th, 2009 6:24 pmIts quiet fun to read this small war between Silverlight and anti MS faction.
For any developer who is actually inertested I can just give an advice to have a look at the following points.
1. More people got Flash then Silverlight, thats simply a fact. Of course I m not sure how to handle this issue since its actually microsoft who puts Flash on windows so silverlight might be just on windows as flash if its out of beta. But for now if you really care about this, flash wins here
2. Databinding. If its very very important to have a central storage of your data flash got cairngorm and really easy databinding. Just add [Bindable] above something and its bindable (But i m not sure about all elemens).
For they guys at ms: SERIOUSLY do something about this databinding. Most complex objekts like list or something are not even firing if an element is added. And what the hell is this overcomplicated stuff with the INotified whatever event. Its possible to bind and archive same result as in flash but its overcomplicated and you need too many workarounds.
3. Sockets. If you are about sockets, both Silverlight and Flash can use sockets of course. As for me, silverlight here. Why? I LOVE XML SERIALIZE. Got a class? how do you send the data? write a own function for every class you want to transport over the socket so it is in xml? or just use the xml serializer and do serializer.serialize(object) and done. Most of the basic attributes are easy to serialize. Saves so much work its really really one big +.
4. Threading. Well I dont know how you think about it but i think like this: Get the per frame update out of my UI Thread. Seriously. What the hell is Flash doing with the threads ? I used them and its one big riddle to me.
5. IDE. I know I know. You all use text editor and are pro leets so you dont need IDE. No matter how you look at it the Visual Studio is just the best IDE i saw so far. Flex just cant keep up with this no matter what you say. It feels just great to write code in Visual Studio and everything is nice. Just relives lots of stress and speeds up my development.
Really, this is one of the main reasons for me even thought its not really something essecial for the result but its just cool to have this IDE.
6. Components. Flash components like textbox or simple placeholders are all heavy weight. Add too many to the visible area and you fps say bye bye. This is one thing Flash must fix. Silverlight components are much smaller and you can add many many many many more.
7. Do not user per frame self made animations. It sucks in Flash and Silverlight.
Leon
May 10th, 2009 6:53 pmLOL @ the folks saying you can’t develop with Silverlight 3 yet – anyone with an MSDN account has been using it since March :v
zac
May 10th, 2009 8:50 pmJai Ivarsson:
VC-1 is a very real standard. A significant percentage of blu-ray releases use VC-1 as the codec for the feature films. Ever heard of a little company called Warner Bros., or Universal Pictures? They use VC-1 almost exclusively for their blu-ray releases.
Anyone who has actually used MS dev tools will tell you that they treat developers very well and .NET is wonderful platform to work with. This is coming from a mac user by the way :) But for development, its gotta be visual studio. Now this is possible and we can write code that runs on mac? That’s where I want to be…
Rafyta
May 10th, 2009 9:02 pmI think this article should have been written by a better informed author
Rafyta
May 10th, 2009 9:04 pm@zac:
“I can’t stand it when people just blatantly hate on MS for absolutely no reason.”
I’m pretty sure there are plenty of reasons, specially when it comes to the web.
Raja
May 10th, 2009 9:08 pmNice article
Raja
May 10th, 2009 9:09 pmNice articles
zac
May 10th, 2009 9:23 pm@Rafyta:
I was referring specifically to VC-1.
“VC-1 codec is a video standard in no ones world except Microsofts where as h.264 and mp4 is a standard everywhere.”
Actually anything that will play a blu-ray disc supports it. Regardless, I edited that out because it wasn’t necessary.
John Clark
May 10th, 2009 10:03 pmErrors
Flash is frame based. Error Flash from CS3 can be programmed from the timer object.
Deployment. Flash contains only one swf file. This is up to the object design.
Summary
‘it’s worth noticing that a minority of web users actually have a Silverlight plugin installed on their machine’ Aint that the truth!
Wish List
Microsoft build CS3/4 support for the IDE/Microsoft ,’assist’ all of there users to include silverlight, it would only need an ‘update’.
Microsoft need to give more backwards compatibilty, my IBM PC is not getting automatic updates when booting from basica. I have not had an update since 1986
Daniel Greitens
May 10th, 2009 10:23 pmOne fact is not true: “Silverlight uses XAML for its description language, and it is non-compressed, so the size of a Silverlight component is usually larger.”
Silverlight uses XAML, thats right. But it is compiled and packed in an zip. So THERE IS a very good compression.
Someone mentioned flex. When comparing to something, then you must compare it to WPF (which is much more powerfull than flex).
Daniel Greitens
MVP Visual Developer Expression
Massimo Bastianon
May 10th, 2009 10:44 pmYou should also say how old are they..
Flash had a lot of years of testing and development, Silverlite is made in microsoft but it’s still a baby.
Philiosum
May 10th, 2009 10:57 pmWow, this article has generated a huge number of debuts and responds. Nice article!
Looking at the fundamental, Flash definiately has a upper hand when it comes down its features it offer. It is mature and it has greater support.
However, Adobe comes from a grahpical designer perpective, while Silverlight comes from the programmer perpective. With the support of the .NET Framework, it is probably easy to create enterprise type of website compare to Flash.
MS is definately catching up with Adobe interm of its features. It is only a matter of time when most of the machines will have Silverlight install. It is also a matter of time before there are Sliverlight supports for Linux (Mono is a good example) by open source project. MS is probably going to focus only on support Windows and Macs since these two dominated the typical consumer markets.
Ultimately, whichever the companies provide easy tools to get the job done fast will win the race, because time is money.
leblanc meneses
May 10th, 2009 11:00 pmare you positive silverlight runs on windows mobile?
http://silverlight.net/learn/mobile.aspx
Q: Where can I find Silverlight for mobile and associated SDK for download? When is Silverlight for mobile available?
A: Silverlight for mobile is currently under development. We haven’t announced any further details around availability at this time.
Ravi Palwe
May 10th, 2009 11:05 pmNice article………….. Smashing Magazine……….rocks
John
May 10th, 2009 11:12 pmYou mention that the silverlight output is uncompressed. This is not true, the xap files is compressed and its very simple to add a custom build action to increase the compression further. I do this myself on all projects. A xap file is just a zip file with a different extension. (Typical gain 25% reduction over standard, note, standard, compression)
There is no detail in this article and its poor by SM standards IMO.
spritzstuhl
May 10th, 2009 11:16 pmThanks for the article and the many comments! Helps me to have at least an idea what the pros and cons of FS vs. SL are.
vnayak
May 10th, 2009 11:17 pmMicrosoft has always been a follower and never the leader…
It can never innovate something drastically different.
Silverlight will do all that flash will do, but nothing more….
Dig
May 10th, 2009 11:23 pmWhat cracks me up reading these comments is how people look at Silverlights current 25% market share as a deal breaker.. so I guess if a low market share is a reason to disregard a technology then I guess Silverlight not supporting Linux is just fine.. I mean that OS only has 1% of the workstation market.. so great, one less reason to dislike Silverlight…right? Flash was first released in 1996 over a DECADE ago… Silverlight version 1 was released in 2007.. and is now at version 3 and for the most part is on par with Flash. So all you people that want to harp on Silverlights market share better have at it while you can…. for better or worse it won’t last for long. I for one think it is for the better for both groups of developers as it gives Adobe a real reason to quickly improve their product and the same goes for MS. So far I have been pretty impressed with the speed to which MS has improved Silverlight. I think Adobe and the previous owners got a little lazy.. I mean over a Decade? By now Flash should just read your thoughts.. and BAM project done! I think that will probably ship in Silverlight 4.
Nadine
May 10th, 2009 11:25 pmThank you! I would now go on this blog every day!
Nadine
Jan
May 10th, 2009 11:31 pmInteresting read. I still prefer Flash, though. But that’s just my personal preference.
Simon
May 10th, 2009 11:39 pm@146: Just try pitching a 25% penetration rate to a client. Good luck mate.
Ber
May 11th, 2009 12:09 amYou don’t mention Flash Media Server, which is widely used for media streaming for flash !?…
aMUSICsite
May 11th, 2009 12:13 am“Just about everyone already has Windows Movie Maker, but if someone doesn’t, it’s not a big deal because Microsoft makes available a free SDK encoder for producing WMA and WMV”
Does this include OS X support?
J
May 11th, 2009 12:33 amThis article is not completely biased. The *ignorant* author does what he can to ensure that both technologies get what he thinks is a good representation.
Here’s a flash dev’s quick POV:
Animation: while time-based tweening isn’t completely there yet for flash, the article supposes that everyone’s doing timeline animation. hardly so. if you want my opinion, check out jack doyle’s Tween* classes. ’nuff said.
File Size: totally irrelevant comparison. sorry. I agree with most posters: compare SL with Flex instead.
Video: have you been on the internet in the last two years? flash is clearly on the ball with the latest video technologies. vc-1? industry standard? you’ve got to be kidding me. I read all of the responses here, laughing particularly hard at the ones mentioning that vc-1 was the codec of choice for dvds from major motion picture agencies. IRRELEVANT AGAIN.
I’ll make this the last one:
Accessibility: The author actually talked to someone worth their salt when they said that Google was working with Adobe to make flash accessible. I’m surprised no flash devs here brought up other efforts to make flash sites SEO compatible, namely Gaia (of which I’m a HUGE fan). SEO, not a problem. Dynamic text, yeah still a problem, but show me an ajax site that can have all its dynamic content indexed. Not happening because it’s not possible.
Dig
May 11th, 2009 1:00 am@148 like I said … won’t last for long. You think Flash was born at its current penetration level? Some how clients went for it just fine.. so I hope that is not all you are pinning your future client base on. When Flash was born in 1996 Netscape had like 80% of the browser market and MS had around 15% and we all know how that turned out. In fact I think MS is pulling an IE all over again…does anyone doubt that Silverlight will be installed on the impending Windows 7? Anyone? I don’t think Flash will go the way of Netscape as it requires a larger investment (in time and training) for people to just switch willy nilly. Also, why are people are acting like having a user install the Silverlight player is some huge deal… ahh… it’s like a mouse click.. the same mouse click it takes to upgrade to the next version of the Flash player.
Polya
May 11th, 2009 1:17 amVery helpful article together with all the comments it’s stirred. Thanks!
Mark Pearl
May 11th, 2009 1:44 amTo be honest, when reading this posting I felt it was a little biased to Flash.
There are definately advatanges and disadvantages to both technologies BUT you forgot to mention XBAP applications for silverlight.
Also, I would give this debate another 6-12 months and I think the bias is going to begin to be in MS favour. Silverlight is going to be on a lot more machines and v3 has a ton of features that will make it ia viable solution.
gr8pixel
May 11th, 2009 1:57 amMy opinion is.. Silverlight has a long way to go… I can’t even think of a way to compare it with Flash.
Andrei Gonzales
May 11th, 2009 2:17 amLOL. I learned more from the comments than from the article.
Good one SM. Rubbish attempt at journalism once again.
Enrico Foschi
May 11th, 2009 3:20 amLearned more from the comments than from the article.
The article is pretty well done, but the comparison is from a very high level (and sometime superficial) point of view and many of the important details are still missing (most of them, in the comments).
Personally, .NET code portability, integration and costs of development are the main features that convinced me to move from Flash to Silverlight.
lol
May 11th, 2009 4:08 amI can’t even begin to tell you how wrong this article is.
The author claims to be a web developer of 8 years. HAHA. No.
Nicely written, but you obviously don’t know jack about silverlight and this article is biased.
Alex
May 11th, 2009 4:36 amI have been using Flash for years, but recently more and more business clients are looking into Silverlight because we are already developing on a .net environment. So far I found Silverlight quite difficult to get into, but very powerful in its B2B side application.
silly mike
May 11th, 2009 4:40 am@Doug S:
> 1. Only about 10-30% of the web has Silverlight while 99.97% of the web has Flash 9
> or higher.
yeah, first it was 96%, then 97%, then 99% and now it is 99.97%. Nice. Can you prove it?
> 2. The Flash Player 9 and higher support streaming of the H.264 video codec which
> means anyone with a video program that can output an MP4 can stream to Flash.
> There are literally hundreds of free apps on Mac, PC and Linux that can do this.
Silverlight 3 supports H.264 as well. Silverlight has media pipeline which allows people write and distribute their own media codecs.
> 3. The latest version of Flash Player supports 3D rendering. Silverlight does not.
Silverlight 3 supports 3D rendering so you are missing the truth.
> 4. SWF, FLA, FLV, and AS are all open-standard formats. Silverlight is 100% proprietary.
Silverlight is based on XML which is free by definition. It is not propietary and there are free tools for building XAML. .NET framework has source code available.
> 5. Actionscript is based off the same root as javascript and AS 3.0 and javascript
> are extremely similar. Silverlight uses Windows-centric code languages that are
> meant for the desktop and are likely only to be known by desktop-app developers.
> Higher learning curve.
Right, C# is based on ECMA standard as well. It is more advanced than AS.
Oh, and my personal favorite:
> 6. Silverlight is Microsoft, Flash is Adobe. Say what you want, Adobe does right
> by the web whenever they can. Microsoft does not. Wouldn’t you rather go with
> the company who doesn’t go out of it’s way to make your life harder?
Yeah, I trust the company thaat makes a product 2x bigger than CS4 that installs 4 times faster. If I have to choose – MS or Adobe – I go with MS.
Internetová agentúra
May 11th, 2009 4:43 amI must agree with gr8pixel (155.). If something is quite good and deeply permeated into system and developers too, i can see no reason for something like silverlight, not in web. Anyway, nice comparison of those two technologies. Thanks.
Amaiko
May 11th, 2009 5:00 amSilverlight + Linux = Moonlight
Tony the Tiger
May 11th, 2009 5:01 amSilverlight is the new Betamax, what a load of M$ rubbish
NewAgeSolution
May 11th, 2009 6:10 amThis is purely from the programmer’s perspective which is my own that I would like to share with readers here. And by the way I enjoyed the comparison done here.
My experience is in Action Script that consumes .Net objects using WebOrb for the Flash apps in writing educational web app. My experience in having extra layer of WebOrb to consume .Net object was too much of pain. Code generator like CodeSmith was heavily utilized to make sure impedance mismatch from ActionScript to .Net objects mappings were minimized. Now there are many programmatic issues I can think of having .Net shop going with Flash and AS at least from my experience but it is possible and I seen it done right and company making lots of money.
As for .Net shop going with Silverlight 3 is no brainer in my opinion because. EntityFrame, WCF and Silverlight 3 allows perfect integration. You do not need to be writing objects mapping from one language to other as described above. Everything is taken care by Microsoft Framework during the compilation. This to me is time saver and allowing me to focus on writing line of business and not worrying about persistence or worrying about consuming web services.
Now when it comes to recruiting writing RIA only thing I have to look for is ASP.Net and c# developer who will fit right into writing Silverlight in my shop and I have millions of developers who are willing to dive into Silverlight and have pure designer to give us nice vector graphics.
As for animation I think Flash and Silverlight can handle most of them. At least with my experience I tend to look at Flash animation examples first because there are tons of good stuff out there. And then convert them back to Silverlight. Many techniques and inspirations are brought from Flash into Silverlight.
Andre Xavier
May 11th, 2009 6:11 amThis is a great article and the discursion too. Congratulations to the authors and repliers.
JC
May 11th, 2009 6:48 amInteresting that the author uses the Silverlight 3.0 toolset to write the article but leaves out all the features.
Andre Xavier
May 11th, 2009 6:50 amThis is a great article because the discussion that it brought up. Congratulations to the authors and repliers.
Ian Smith
May 11th, 2009 8:17 am@Leon LOL right back at you. Nobody said you couldn’t develop an application with Silverlight 3. Just that having done so you currently have no way to deploy it. There is no “go live” license and you are violating the terms of the license agreement if you try to do so.
Tim Acheson
May 11th, 2009 8:22 amThis is article contains some useful information, BUT:
This article requires further corrections and clarifications. In particular, key aspects and capabilities of Silverlight 2 and the.NET framework have been downplayed or overlooked. (I appreciate that the authors may not yet have reviewed Silverlight 3 which provides very many more features including additional media formats.)
I trust that you will at least correct the following points in your article, as well as your conclusions and the table at the end. There are other examples, these are only the most obvious.
E.g. “The deployment process of Silverlight is far more complex; all individual components need to be deployed separately.” This is incorrect. Even using the default deployment settings, a Silverlight solution deploys to a single XAP file which is directly equivalent to the SWF file created for Flash. In fact, the XAP file is simpler and offers more flexibility than Flash! The XAP file is simply a Zip file containing a highly compressed compiled DLL and potentially an XML file! Therefore, unlike a SWF file, the developer can create and extract an XAP file using standard Zip software and manually optimise the file size before deployment. With either Flash or Silverlight, it may be best to store additional assets separately.
E.g. “Silverlight uses XAML for its description language, and it is non-compressed, so the size of a Silverlight component is usually larger.” This is wrong, or perhaps a misconception. If done appropriately, the XAML is compressed within the finished XAP file which is in fact just a Zip file. You won’t find a more efficient and well-supported compression algorithm for the web.
E.g. “Silverlight doesn’t support playing the movie as a Windows application.” This is incorrect, and actually misunderstands .NET and misrepresents how Silverlight 2 fits into the .NET framework. Silverlight is a type of .NET project for building rich client applications for the web. Developers can use the same .NET framework and the same development tools to create equivalent desktop applications, but the type of project is called WPF which has the same features as Silverlight plus much more since it’s a full-blown desktop application.
E.g. “SWF, FLA, FLV, and AS are all open-standard formats, while Silverlight is 100% proprietary.” This is simply incorrect. A Silverlight app can be written in pure XAML which is XML, and/or JavaScript, and the deployed product is a standard Zip file! But the expression”100% proprietary” is a strange way of putting it, more like the sort of hype we hear from entrenched Adobe or MS supporters.
E.g. There’s no such thing as “Linux 5″! Also, I aren’t you overlooking Moonlight which is the Silverlight alternative realised through a collaboration between Microsoft and other parties?
E.g. “Say what you want, Adobe does right by the web whenever they can. Microsoft does not.” The author(s) of this article can’t even contain their anti-MS bias. It’s disappointing, because what we all need is accurate, objective information.
I’m pleased to see that you’ve already corrected the incorrect statement that Silverlight doesn’t support Sockets, as of course it does. But you haven’t updated the table in your conclusions accordingly! I trust that this undue bias isn’t intentional and will be corrected.
WarNov
May 11th, 2009 8:26 amThis is a nice article to startup a discussion. But sadly, I have read some posts which weren’t made with information:
1, Cross platform: I’ve made an application from the scratch to end like this:
Underlying OS: Unix
WebServer: APACHE
Language: PHP
DataBase: MySQL
With this non Microsoft Tools, I served a Web Page that rederized the final app to the user using SILVERLIGHT. And as if this weren’t enough, the user were browsing with Firefox… so.. all of you uninformed flash workers,,, can do such a thing in flash???
Notice that I didn’t even used the Microsoft Framework, nor Visual Studio, nor Expression Tools. It is true that it would be easier using the comercial tools I’ve just mentioned. But Silverlight uses XAML for all its representations. XAML is XML based and opened. So anyone could construct open tools for making the work easier and cheaper. Is there this possibility with flash???
I found another “innocent” post (not to say stupid) from some guy Doug S. He said:
“5. Actionscript is based off the same root as javascript and AS 3.0 and javascript are extremely similar. Silverlight uses Windows-centric code languages that are meant for the desktop and are likely only to be known by desktop-app developers. Higher learning curve.”
As I mentioned aearlier, I built a Silverlight using PHP. And it is not the only option; you can use Javascript, Ruby and Python; that comment was really annoying; but well; those are the effects of the ignorancy.
He also said:
“Oh, and my personal favorite:
6. Silverlight is Microsoft, Flash is Adobe. Say what you want, Adobe does right by the web whenever they can. Microsoft does not. Wouldn’t you rather go with the company who doesn’t go out of it’s way to make your life harder?”
And that comment felt down under its own weight; He is just bilnded by his preference. I wouldnt hire a profesional like him. We need open minded people ready to take the best of the world around them. That’s why I have experimented with other worlds (for me) like Unix, apache, etc.
Im creating a Silverlighted blog at http://warnov.com and I would post about my experiment in ther. I’ll let you guys know whet it be ready.
http://memorabilia.hardrock.com/ Can you make something like this in flash?
Chris
May 11th, 2009 9:33 amPoorly researched and executed article. Many functional areas/comparisons are left out and the author appears to be ignorant of the entire marketplace, for example, the Moonlight project or .NET Sockets. This degrades their credibility. A sophomore-level article but it fails to paint a complete picture or provide accurate analysis.
Lipton of Starfeeder
May 11th, 2009 11:00 amLOL?!? I’m surprised the SilverLight team still has funding…
SilverLight is a joke, if its only purpose is to be a competitor so Adobe can lower the cost of Flash then good job SilverLight.
btw Better at Animation? You guys gotta be kidding me…
Jonathan
May 11th, 2009 11:05 amMicrosoft still has a bad rep among web designers, and deservedly so. They will have a hard time pushing this product. The web design community is unlikely to forget the many additional hours put into coding web pages to make them work in IE prior to version 7.
daniel
May 11th, 2009 11:36 amCouldn’t agree more with Lipton of Starfeeder. Silverlight better at animation??? eee….. did you use Flash ever before writing this? And one more – I wish to see a frame-by-frame 3 seconds long animation which takes 2 seconds to play while executing… Please.
People like me are making cartoons, or fully animated web sites with Flash. And why did I choose Flash? Because of its reliability and possibility of crossing over hand drawing, rich & HQ video like MP4 or MOV, compressed and uncompressed sound, 3D and object oriented programming. Give few years to Silverlight to catch up with that – then we can start comparing.
techsavvy
May 11th, 2009 11:51 amGood article but you left out something important about Silverlight.
It is also processor dependent. It will not even install on my HP Compaq TC1000 tablet running windows XP with a 1GHZ Transmeta processor. Flash does however play.
Because of this, that means no Netflix on this lappy.
I believe SSE extensions are needed for Silverlight.
Flash is becoming more difficult to play on laptops too. This may be due to high compression ratios as well as higher resolution video on sites like youtube and vimeo. So I like sites like Exposureroom.com that offer multiple stream resolutions.
As hackers make it more neccessary to add security features to streams as well, it is going to become necessary to buy higher end equipment just to play online video too. Laptops that were perfectly fine for playing online video last year are no longer adequate, So buyer beware when buying a used lappy at auction.
Even the much loved netbook could fall victim if developers don’t pay attention.
Niels Bjerg
May 11th, 2009 12:58 pmLiked the thorough comparison, however it would have been a more equal comparison had you gone with Flex vs. Silverlight, which in all cases tries to solve the same types of problems?
Also the moving of an object with a duration of exactly 3 seconds part is not good imho. You can easily make a tween (move) with a duration instead of relying on the framerate…
Otherwise nice writeup
Spirytus
May 11th, 2009 4:30 pmalthough i prefer Flash (especially at the moment) it amazes me that some people (morons imo) saying “i choose flash cause i don’t like MS” :/ and yet they probably using microsoft products, either windows, office etc. i’m not a big fan of MS but this MS bashing by some apple fanatics is just ridiculous
Ignus
May 11th, 2009 6:15 pm@ 174.
How much time have you spent trying to thread 10 or more animations in flash at the same time? The fact of the matter is that you dont always know what the results are going to be, and when you start doing advanced threading, flash can bring your PC to a grinding halt. The reason why cartoons animate correctly, is because it contains a sound layer with the corresponding animation.
The fact that SEO is not supported in Flash is very very very down played in this conversation. Flash has been around for over a decade and still doesnt have this BASIC requirement down? Any person working as a professional web developer aimed at creating traffic (we’ll, me for sure) dance around having to use it for anything more than an interactive tool with limited content, not even mentioning Silverlight, I have started to replace most things considdered to be suited well for Flash with AJAX, Javascript and libraries like JQUERY just for this simple fact.
In terms of development, I am relatively new to Silverlight, so I am not going to FLEX my muscles here (no pun intended), but as far as IDE’s are conceirned, Flash is clumsy at best, and does not guide the users in any way towards writing better, more modular or scalable code. This is a personal observation, but I feel much more in control of what I am doing in .NET (Even though i have been developing in Flash for 6 years). The Flash IDE just seems a little old school and unnatural to me.
Raymond
May 11th, 2009 7:33 pmCan Flash/Flex support TIFF image format, esp. Group-4? At least I still can’t get it work.
Fuad Ahasan Chowdhury
May 11th, 2009 9:56 pmmost of the web designer/developers doesn’t like microsoft due to some logical reason :) I prefer flash personally and before reading this article i didn’t know all of these things. thanks a lot for such good article .. I’m gonna tweet this. :)
evodanh
May 11th, 2009 10:33 pmSince I’m an ASP.NET develop so I hope Silverlight success.
md. ismail
May 11th, 2009 10:49 pmThe web sites/applications are targated for ms platform, use silverlight. But in genaral silverlight should be avoided by non ms developer; they should use Flash instead.
evodanh
May 11th, 2009 11:17 pmI hope smashingmagazine has more Silverlight and Flash article. I think this two “hot” technologies. Thanks smashingmagazine.
Chris Greenhough
May 12th, 2009 12:38 amYikes. I think it’s time to rename this site SmashingWormCan.com…
Tim Acheson
May 12th, 2009 12:40 amThe majority of the information about Silverlight in this article appears to be plagarised from a two-year-old post on the Silverlight.net forum which was inaccurate at the time:
http://silverlight.net/forums/p/3015/218610.aspx#218610
Furthermore it was written before Silverlight 1.1 and we are now into Silverlight 2 or 3 — no wonder the information is more incorrect now than when it was first posted.
jurica
May 12th, 2009 12:40 amAre SM on Microsoft’s pay list? I dont understand?? Silverlight??? You must be kidding.
I can’t take Siverlight serious.
@Pete, you are for sure on Microsoft pay list…
Are you serious?
Flash
Othrayte
May 12th, 2009 2:04 amYou seem to talk about AS3/Flash and SWF, these are different things and YOU DON”T NEED TO SCRIPT (or code) FOR SWF IN AS3, try haXe (haxe.org) for instance, it compiles directly to optimised SWF files, is open source. And as a side note haXe allows media streaming from haXe based (or other ones that haven’t apeared yet) media servers. But I wont try to fool you, haXe is only really for scripting, and animation is easier within Adobe’s Flash, but of cause you can import these into haXe when you need to use them.
For more info on haXe your should visit haxe.org, or if you just found my explanation confusing.
Otherwise the review is reasonably accurate.
KD
May 12th, 2009 2:31 amNice attempt, but full of holes / superficial:
- Silverlight 2 package is compressed. Xap file is really zip file. And there are open source Visual Studio plugins/tools for even better compression.
- Image format support in SL is possible via open source libs. Probably included in SL3 (nr 2 on http://blogs.msdn.com/jstegman/archive/2008/12/27/update-on-feature-requests.aspx)
- Supplement: Managed C# codebehind is not (interpreted) script, but compiled to MS Intermediate Language dlls and fast as hell
- Supplement to Platform Compatibility: Silverlight 1.0 runs on Linux via Moonlight. Support for Silverlight 2.0 is in pre-Alpha stage. Minimal diff with Flash
- SEO: Wat is stated in the aticle applies to SL1. Compiled xaml pages in xap-file are not indexable in SL2, but SL3 solves this (with Navigation Framework). Here you can request seperate xaml-pages on url basis
- Socket Programming i think is obsolete (synchronus communication). Asynchronus alternatives WebClient & HttpWebRequest are fine by me and keep the GUI more responsive. Policy file (crossdomain.xml) is also needed for Flash (is even created by
macromedia).
- Webcam & mic support is nr 1 on SL3 feature req list (http://blogs.msdn.com/jstegman/archive/2008/12/27/update-on-feature-requests.aspx)
- SL Deployment story is total bogus (pic contradicts text): Everything in SL2 is included in xap. Evt. you could fire http requests for externe data as a result of navigation clicks, but you can also precompile all into 1 package. It all depends on the sort of app you’re making.
- Windows app: SL3’s “Out-of-browser” feature fills this spot. With this any SL component can be installed as a Windows app
Conclusion
For Silverlight 2
- Tied on following categories: File size, Deployment (both half a point)
- External data fetching (Socket Programming) seems better in SL to me.
Instead of 9 : 5 for Flash i’d say 7 : 7 tie with a minimal lead on Platform Compatibility for Flash.
If we look at SL3 the balance goes to SL:
- Tied on: More Image Formats native supported, Windows app, Webcam & mic support (+ 3D projection support).
5.5 : 8.5 for SL3.
Actual measured SL & Flash coverage on our website:
March
48% vs. 94%
April
43% vs. 91%
I am curious though if SL can get enough coverage.
Tim Acheson
May 12th, 2009 4:40 amThe previous comment is very useful, and its conclusions should replace those of the original article.
http://www.smashingmagazine.com/2009/05/09/flash-vs-silverlight-what-suits-your-needs-best/#comment-348600
Jesse
May 12th, 2009 5:05 amFlash is good for micro-sites / games. (IE. marketing)
Silverlight is good for apps + .NET (IE. functionality)
Yes Flash can use XML / XLST for data etc; but its a round about way to interact with a .NET solution. Silverlight allows this, but is not as supported as Flash.
Personally I love flash, if it’s done right; which it hardly ever is. I wish Silverlight would gain market share so there would be more competition; flash developing has been rather stagnant sans-XML the past few years.
Tim Acheson
May 12th, 2009 5:27 amThe two-year old forum post on which most of the original article above was based was been corrected and updated today:
http://silverlight.net/forums/p/3015/218703.aspx#218703
I trust that this article will also be corrected, as it some of the assertions and conclusions about both Flash and Silverlight are either incorrect or grossly misleading.
John Drach
May 12th, 2009 6:19 amWhy reinvent the wheel?
Flash works fine. Why would I want to learn Silverlight?
Plus, I hate Microsoft and all their buggy software and browsers.
Pass!
Dan
May 12th, 2009 6:56 amSilverlight is just pathetic, it will never catch on for these three reasons:
1. It sucks
2. Web developers already know and use the 100% better flash
3. As a standard for usability, extra plugin requirements are a huge no-no. So as any smart interactive designer, director, programmer would avoid something with a penetration rate lower than 80% unless absolutely required, which in this case…just use flash.
BTW you’re wrong about flash SEO…ask.com has been caching all flash text since 2005…google and yahoo are actually way behind them on this.
Richard
May 12th, 2009 7:39 am@bolomkxxvii: You are mistaken. Silverlight has it’s own mini, cross platform, CLR and has no dependency on the .NET framework being installed.
Mike
May 12th, 2009 7:44 amGreat article. Flash is better. Though I think animation is better with Flash because you can do it via time also and I stream with Flash all the time, so I know it can be done.
fabrika
May 12th, 2009 8:45 am50% of the comments here are astroturfed by Microsoft. Sad practice.
Lee Graham
May 12th, 2009 9:50 amDecent article, but on the Scripting comparison the author is comparing apples to oranges… he should be comparing Flash + Flex to Silverlight + VB or C#.
Not 100% sure I agree with his taking on streaming either…
You can do alot of the same things between Flash & Silverlight (I’ve used both), Both have decent features, but IMHO I don’t think Silverlight is quite up to par with Flash because it is so young.
I can see a bit of bias considering the author works for a Microsoft Certified Partner.
pisey
May 12th, 2009 7:06 pmSince Silverlight is just a step-follower of Flash, it will find a hard time to stay in this world. Silverlight came too late, I think. Most machines have Flash Player while some users don’t even know what Silverlight is. They always skip the installer. Major websites such as Youtube, megaupload, imeem etc are using Flash, so that Flash is safe to win over Silverlight. I don’t think Silverlight lasts for long. But who know? Only the time can tell. ^^