Flash vs. Silverlight: What Suits Your Needs Best?

Advertisement

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.

Adobe Flash Animation

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.

Microsoft Silverlight Animation

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.

Text representation in Adobe Flash

Silverlight uses XAML for its description language, and it is non-compressed, so the size of a Silverlight component is usually larger.

Text representation in Microsoft Silverlight

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.

Action Script

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.

Visual Basic

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.

Video Codec

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.

Sound Processing

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.

Accessibility

Accessibility

Accessibility

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.

Socket Programming with Flash

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).

Silverlight Deployment

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.

Flash EXE Builder

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.

Microsoft Silverlight Streaming

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:

(al)

  1. 101

    Silverlight 3 supports standalone exe. Just right click and select send desktop..

    0
  2. 102

    Justa 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

    0
  3. 103

    An example of a strange whole flash site: http://www.darkyria.com

    0
  4. 104

    sama creation

    May 10th, 2009 5:04 am

    very nice article
    adobe flash is the best

    0
  5. 105

    I’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.

    0
  6. 106

    I’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.

    0
  7. 107

    Looking 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.

    0
  8. 108

    It 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.

    0
  9. 109

    This 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.

    0
  10. 110

    The 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.

    0
  11. 111

    It 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.

    0
  12. 112

    I’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.

    0
  13. 113

    TJ Holowaychuk

    May 10th, 2009 8:14 am

    Microsoft is terrible I would never install or touch Silverlight

    0
  14. 114

    Aaron Martone

    May 10th, 2009 8:24 am

    Whenever 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.

    0
  15. 115

    Fact checker

    May 10th, 2009 9:16 am

    This 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.

    +1
  16. 116

    Wow, 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

    0
  17. 117

    Videometry.net

    May 10th, 2009 10:11 am

    At 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.

    0
  18. 118

    I’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/

    0
  19. 119

    Silverlight 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

    0
  20. 120

    One 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.

    0
  21. 121

    Lets 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.

    0
  22. 122

    fan boi garbage.

    0
  23. 123

    @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.

    +1
  24. 124

    this 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.

    0
  25. 125

    I 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.

    0
  26. 126

    @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.

    +1
  27. 127

    Silverlight, 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.

    +1
  28. 128

    Seriously, 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?

    +1
  29. 129

    Jai Ivarsson

    May 10th, 2009 4:41 pm

    As 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.

    0
  30. 130

    Its 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.

    0
  31. 131

    LOL @ the folks saying you can’t develop with Silverlight 3 yet – anyone with an MSDN account has been using it since March :v

    +1
  32. 132

    Jai 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…

    0
  33. 133

    I think this article should have been written by a better informed author

    0
  34. 134

    @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.

    0
  35. 135

    Nice article

    0
  36. 136

    Nice articles

    0
  37. 137

    @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.

    0
  38. 138

    Errors
    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

    +1
  39. 139

    Daniel Greitens

    May 10th, 2009 10:23 pm

    One 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

    +1
  40. 140

    Massimo Bastianon

    May 10th, 2009 10:44 pm

    You 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.

    0
  41. 141

    Wow, 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.

    0
  42. 142

    leblanc meneses

    May 10th, 2009 11:00 pm

    are 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.

    0
  43. 143

    Nice article………….. Smashing Magazine……….rocks

    0
  44. 144

    You 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.

    0
  45. 145

    Thanks 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.

    0
  46. 146

    Microsoft 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….

    0
  47. 147

    What 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.

    +1
  48. 148

    Thank you! I would now go on this blog every day!
    Nadine

    0
  49. 149

    Interesting read. I still prefer Flash, though. But that’s just my personal preference.

    0
  50. 150

    @146: Just try pitching a 25% penetration rate to a client. Good luck mate.

    0
  51. 151

    You don’t mention Flash Media Server, which is widely used for media streaming for flash !?…

    0
  52. 152

    “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?

    0
  53. 153

    This 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.

    +1
  54. 154

    @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.

    +1
  55. 155

    Very helpful article together with all the comments it’s stirred. Thanks!

    0
  56. 156

    To 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.

    0
  57. 157

    My opinion is.. Silverlight has a long way to go… I can’t even think of a way to compare it with Flash.

    0
  58. 158

    Andrei Gonzales

    May 11th, 2009 2:17 am

    LOL. I learned more from the comments than from the article.

    Good one SM. Rubbish attempt at journalism once again.

    +1
  59. 159

    Enrico Foschi

    May 11th, 2009 3:20 am

    Learned 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.

    0
  60. 160

    I 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.

    0
  61. 161

    I 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.

    0
  62. 162

    @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.

    0
  63. 163

    Internetová agentúra

    May 11th, 2009 4:43 am

    I 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.

    0
  64. 164

    Silverlight + Linux = Moonlight

    0
  65. 165

    Tony the Tiger

    May 11th, 2009 5:01 am

    Silverlight is the new Betamax, what a load of M$ rubbish

    0
  66. 166

    NewAgeSolution

    May 11th, 2009 6:10 am

    This 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.

    0
  67. 167

    Andre Xavier

    May 11th, 2009 6:11 am

    This is a great article and the discursion too. Congratulations to the authors and repliers.

    0
  68. 168

    Interesting that the author uses the Silverlight 3.0 toolset to write the article but leaves out all the features.

    0
  69. 169

    Andre Xavier

    May 11th, 2009 6:50 am

    This is a great article because the discussion that it brought up. Congratulations to the authors and repliers.

    0
  70. 170

    @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.

    0
  71. 171

    This 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.

    0
  72. 172

    This 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?

    0
  73. 173

    Poorly 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.

    0
  74. 174

    Lipton of Starfeeder

    May 11th, 2009 11:00 am

    LOL?!? 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…

    -1
  75. 175

    Microsoft 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.

    0
  76. 176

    Couldn’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.

    0
  77. 177

    Good 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.

    0
  78. 178

    Liked 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

    0
  79. 179

    although 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

    0
  80. 180

    @ 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.

    0
  81. 181

    Can Flash/Flex support TIFF image format, esp. Group-4? At least I still can’t get it work.

    0
  82. 182

    Fuad Ahasan Chowdhury

    May 11th, 2009 9:56 pm

    most 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. :)

    0
  83. 183

    Since I’m an ASP.NET develop so I hope Silverlight success.

    0
  84. 184

    The 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.

    0
  85. 185

    I hope smashingmagazine has more Silverlight and Flash article. I think this two “hot” technologies. Thanks smashingmagazine.

    0
  86. 186

    Chris Greenhough

    May 12th, 2009 12:38 am

    Yikes. I think it’s time to rename this site SmashingWormCan.com…

    0
  87. 187

    The 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.

    0
  88. 188

    Are 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

    0
  89. 189

    You 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.

    0
  90. 190

    Nice 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.

    0
  91. 191

    The 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

    0
  92. 192

    Flash 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.

    0
  93. 193

    The 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.

    0
  94. 194

    Why 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!

    0
  95. 195

    Silverlight 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.

    0
  96. 196

    @bolomkxxvii: You are mistaken. Silverlight has it’s own mini, cross platform, CLR and has no dependency on the .NET framework being installed.

    0
  97. 197

    Great 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.

    0
  98. 198

    50% of the comments here are astroturfed by Microsoft. Sad practice.

    0
  99. 199

    Decent 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.

    0
  100. 200

    Since 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. ^^

    0

  1. 1

    I think that the comment are too much more biased than the article itself. Actually the article is nice, and just traces a parallel between both tools. Obviously the writer has no one (or very small) experience with SilverLight. But – what the heck – I doubt that anyone here (or anywhere) can tell that has DEEP experience in SL!

    Anyway, I have seen people above speaking in defense of Flash and others doing the same regarding to SL – what in my opinion is very childish since as developers we would be always focused on find the better tools instead to fight each other in name of big companies. Come on, people – not MS neither Adobe will be sharing their revenues with you just because your passionate comments! LoL!

    Anyway, back to the point I think that both platforms has advantages and disadvantages. I am a Flash guy and a .NET developer for years now and my better wish would be to see Flash incarnated into the .NET platform (AKA SilverLight).

    However, as usual (and again!) Microsoft has released a product in a rush with an apparently unfinished tool instead to make their homework accordingly. It sounds at least as stupidity to release a web tool by ignoring Linux.

    I am about to develop a desktop application for the company I work for because they are MS freak and they want one of our old Flash tool converted into SL. It will be very fun for me! But obviously my situation is very comfortable as I will be paid to learn SL as by my bosses request, then even if SL becomes a big failure in the future I won’t have lost anything…

    However, for all the ones that work as freelance developers, I think that it is a dangerous bet. At least for a while. It may mean a big learning curve, and after then, ends as a faulty idea. In my almost 30 years of experience I have seen lots of great nice tools come and go. Anyway, I think that is better to be careful.

    I think that SL MAY be a great tool some day, but for now it just look like a nice golden pill. The fact is that I don’t think that it is fair enough to compare a mature tool with over a decade of attested success with a new born. It is not fair for both ones.

    Let’s try again in 3 years or so. And, of course only if it become Linux friendly. Otherwise, not even in century!

    PS: Just for the records – I am NOT a Linux user – I am only a realistic and conscientious developer!

    :)

    +11
  2. 2

    Obviously, this comment is also biased. For example, the “smooth streaming” as is worth noting, is nothing but a technique similar to the good’ol RealMedia streaming, sacrificing video quality for continuous playback.
    Silverlight is lacking in many respects, just like Flash is, but they each have their own specific drawbacks. Overall, neither of the two is suitable for streaming HD video, no matter what is claimed – this is from practical experience. Flash puts a heavier load on the CPU than Silverlight does, which makes Microsoft’s solution better for potentially embedded use, but at the same time, the actual quality of the result is seriously lacking.

    +5
  3. 3

    This is definitely a biased article. Many things about Silverlight have been overlooked based on lack of experience.
    File size is actually smaller for silverlight if you know how to use the tools Microsoft has provided in their toolkits. As well as all of the files are automatically zipped in to a .xap file by Visual Studio. So there is no need to worry about all of the files it generates. Some of the files listed like Silverlight.js aren’t needed on an ASP.NET server because they are already provided. The Silverlight.js just exists as a helper for sites that don’t necessarily have server-side functionality.
    The sound processing is somewhat lacking in Silverlight. Although Microsoft provided a way for your code to process incoming media streams before they arrive to the MediaElement. This is something that is done seemlessly without modifying the existing functionality. One example of this is Microsoft’s Smooth Streaming technology. This is something that this article failed to mention but is definitely worth noting. Expression Encoder will encode videos at multiple bitrates (generally about 8). And as your watching the video, the appropriate bitrate will be selected based on your computer’s processing power as well as download bandwidth. The transitions between bitrates are smooth. There is no jitter. The video just get clear or blurry. And videos always start immediately.
    The accessibility features of Silverlight are all the same as flash if not better. Silverlight supports close captions and hotkeys as well. And it seems the author just didn’t know about those features.
    Something this article completely left out was Moonlight. It is the Mono Project’s Linux implementation of Silverlight. Mono has some sort of contract with Microsoft to provide the implementation exclusively. And from what I’ve read, they have the Silverlight source code as a reference. So Silverlight is supported on Linux platforms as well. And Microsoft makes this known on their own site.
    I’ve found Silverlight handles images very well. As well as another format called “Deep Zoom”. With Deep Zoom your images are split up in to several files, much like the smooth streaming. As more and more information for the image is downloaded, the image becomes more crisp. Silverlight will only download the information necessary to display the image at the rendering size untill you try to zoom in on the image.
    Socket programming is very limited, but for security reasons. Still most scenarios can be supported with Silverlight. And time-saving tools exist to really speed up communication scenarios. Silverlight supports WCF (Windows Communication Foundation). This is the same framework that .NET has been using since version 3.0. In addition, Microsoft has provided a new product called RIA Services. Which allows you to do database operations and ui binding without writing any code. Aside from binding your xaml elements, it’s all drag and drop. RIA Services also has full customization for field validation. A really impressive toolkit, completely integrated in to Visual Studio.
    Silverlight 4 beta supports webcam and microphone. Sure they’re a little behind. But it’s version 4. What version is Flash at?
    I found deployment to be way simpler than the auther makes it out to be. Infact Microsoft provided a complete javascript framework to provide functions I used to spend hours searching the internet trying to find ways to do with flash.
    There is no mention of “Out-of-Browser” mode for Silverlight. It basically puts a link to the application directly on your desktop. It runs in it’s own window not contained in any browser window. As well as the entire Silverlight program is an ActiveX COM dll. So you can include it in any application. In addition, writing apps for Silverlight is the scaled down version of writing them for WPF and .NET 3.5. So if you wanted to make a stand-alone exe, you would just create it as that type of project. Code can be cross-referenced from both types of projects.
    I haven’t seen true 3D hardware accelerated graphics in either. Infact, what I have seen in flash looks like prerendered alpha video. Unless flash has a poor 3D engine and is rendering those “compressed video blocky” effects. I’m guessing if this is the case, 3D is prerendered in your flash designer. Silverlight does have support for true 3D transformations of 2D objects. Alot can be achieved with this, but still no 3D games. I’m sure some day we’ll see true 3D hardware acceleration from both. But until then, 3D alpha video is the best solution. As any 3D toolkits will be extremely slow.
    Microsoft also has a toolkit that allows you to export your 2D XNA games to Silverlight. This means the same framework you use to make games for PC and XBox 360 can now be used to create games for Silverlight as well. Simplified, yes? And with that hanging over their head, I’m sure 3D support is coming soon.
    Silverlight 4 beta also has full printing support and full mouse support. It also supports a wide range of new media services including downloadable digital copy DRM and full 1080p HD.

    +4
  4. 4

    This is article is sad.

    This shows how media is capable of showing facts upside down.

    I am disappointed with smashingmagazine to present such inaccurate information . It is unfortunate that this article gets a high rank on search engines. I think smashingmagazine should be more responsible and not just bring articles from any author. This author obviously is not qualified to write about Silverlight.

    I feel bad for people who make decision based on this article.

    Anybody with a basic understanding of Silverlight knows that 80% of information here are just wrong!!! Sahme.

    +4
  5. 5

    @Ramon

    FACT: Flash was not a technology of Adobe but of Macromedia.

    +4
  6. 6

    You’re misinformed about Actionscript. Doing your game and animations with frames is just an option, not a requirement. And it isn’t one that’s typically used by serious actionscript programmers. AS3 is also far more similar to C# and Java than it is to javascript.

    I would actually say that Flash is a better platform for games than Silverlight is. The display list heirarchy, event system and object model just really works well for this, as does the integration with their graphic tools. Silverlight is much closer to Flex in terms of how you author applications and what it’s great for creating.

    .NET developers interested in making games really should give Flash a chance. Learning AS3 after knowing C# is a breeze, particularly if you’re used to some of the newer features in C#. You’ll miss some things, such as LINQ, but you may find yourself surprised by the effectiveness of some of the solutions it has, such as E4X for dealing with XML. Creating event driven flow is quicker than in most languages (including C# – though I agree the delegate system there is really pretty nice), and in many ways I feel like the language lends itself nicely to encouraging good programming practice by not making it too painful to do. Adobe took a lot of ideas from Java and C# when they remade the language for AS3, and while it’s missing some features that make those languages mature, it IMHO makes up for it by having an API that’s second to none for what it’s meant to do.

    One tip for people coming from Visual Studio – I find the combination of the free FlashDevelop IDE and the flex sdk to be far more appealing to work with than FlashBuilder or Flash CS5. It’s nice to be able to create content visually in CS5, but for coding, I find FlashDevelop is far more enjoyable. Free is also good.

    +4
  7. 7

    Silverlight is not dead! HTML5 and Flash are a subset of features in Silverlight 4. High end buisness applications such as SAP are written in Silverlight. Windows Phone will always use it. As far as the Mental Miget Colony of “open sores” software goes, you will always be angry because you couldn’t cut it with MIcrosoft products for development. So enjoy your 4% market share.

    +3
  8. 8

    www.Batchass.fr

    June 13th, 2009 6:19 pm

    I used to love Visual Studio, then I discovered Flex Builder (Flash Builder now), based on Eclipse, which is a great development environment to build SWF files. I been using it for 2 years now, it rocks, and I won’t try to learn Silverlight.
    The funny thing is that I found a lot of support from flex developpers on the internet, whereas in ms world, it seems people don’t give information so easily…
    Also, the open source flex SDK is free to use, so no need to buy a flash license if you don’t want to.

    +3
  9. 9

    Hey Gay Joe,
    What’s with all the gay bashing? You know they say that what people hate about other people the most is what they see in themselves.

    And as far as straight people using Flash and gay people using Silverlight, my brother-in-law is gay and uses Flash. He won’t even give Silverlight a try. I myself am straight and use Silverlight. And I gotta say, it’s fun, it’s easy, and there is soooo much Silverlight work out there right now.

    Only an idiot/closet gay could be as ignorant as you.

    +3
  10. 10

    Did somebody care to mention that Flash has lead of few years over Silverlight. All MS haters at the end are writing S/W supported on MS environments to make living.
    Like it or not, a pure OO is much better than kludgy scripting environments. Its matter of time when both technologies will be comparable apples to apples.

    +2
  11. 11

    one of the previous posters said: “4. SWF, FLA, FLV, and AS are all open-standard formats. Silverlight is 100% proprietary.” How can this be true if you are required to have adobe installed to open/read FLA and FLV files? where as with silverlight all you need is notepad to open the XAML.

    +2
  12. 12

    I am a software developer (I don’t develop on flash or silverlight). I develop on Linux at work and my personal box at home is also Linux. I used to be the windows hater guy few years ago, but I’ve learned to judge things on merit rather than propaganda.

    So I watched last night’s football game on nbc.com, which uses silverlight for streaming and let me tell you I am impressed. I did a bad job with cooling my personal desktop at home and whenever I try to watch hulu videos on it, it gets my processor so hot that the computer shuts down automatically. Flash just sucks life out of processors. Silverlight in comparison is way way better. I can watch it without killing my computer. It adjusts the bitrate automatically and does not use much of my processor.

    I, as a user, think silverlight is better than flash.

    +2
  13. 13

    Ok, a whole part of the article is not trus at this time, with Silverlight 3 (and soon 4), but I still think this article is biased, not intentionaly, but rather by lack of information. The one that is mostly untrue is the fact that the IDE is not free, it is free with Visual Studiio Express.

    +2
  14. 14

    I have used Flash and all the other Adobe Programs and don’t really have much interest to learn SilverLight just for the fact that Microsoft doesn’t do creative creation programs (Microsoft Paint is useless). I have never personally used Silverlight’s creation program, it being a Microsoft product makes me feel dirty when my browser pops up that I need it. I know that what ever that it is needed for could have been done in Flash instead.

    What about the creative environment of the program? Does Silverlight’s creation program support Vector art? Can you create artwork and animated it to the point that it comes a live like a cartoon? Flash has been a strong place for Designers that want to be creative. Adobe has been the creative program company, Microsoft is the OS company, that alone makes me doubt Microsoft’s usefulness in this area.

    If you can’t create art in Silverlight, I think Microsoft should just walk away… I don’t want them wining a war that would take away creativity from us Designers. Flash is more then scripting!!

    +2
  15. 15

    @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.

    +1
  16. 16

    Fact checker

    May 10th, 2009 9:16 am

    This 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.

    +1
  17. 17

    @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.

    +1
  18. 18

    Silverlight, 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.

    +1
  19. 19

    Seriously, 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?

    +1
  20. 20

    LOL @ the folks saying you can’t develop with Silverlight 3 yet – anyone with an MSDN account has been using it since March :v

    +1
  21. 21

    Errors
    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

    +1
  22. 22

    Daniel Greitens

    May 10th, 2009 10:23 pm

    One 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

    +1
  23. 23

    What 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.

    +1
  24. 24

    This 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.

    +1
  25. 25

    @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.

    +1
  26. 26

    Andrei Gonzales

    May 11th, 2009 2:17 am

    LOL. I learned more from the comments than from the article.

    Good one SM. Rubbish attempt at journalism once again.

    +1
  27. 27

    I want to add here, that the most flexble power of Flash is the code based animation. The Flash have various scripting libraries to make animations based on ActionScript. You have the native Tween, the Tweener (caurina), gTween, bTween, TweenLite, TweenMax, and much more. With Flash you have a community on the back giving you support arround the world, and powerfully tools, like Gaia Flash Framework.

    The Silverlight should work so much to become a tool better than Flash!
    (sorry for weak english)

    +1
  28. 28

    A Good Article but I think if You compare Adobe Flex Vs silverlight then it will be better because Adobe Flex and Silverlight are companions and i am sure Adobe Flex will get maximum marks, as a adobe lover i believe Its Always the best as for as graphic and media soft wares are concerned

    +1
  29. 29

    I own Adobe Create Suite 4 Production Premium, Expression Studio 1, and Visual Studio 2005/8. I really like everything about CS4 and Visual Studio. I don’t like Expression Suite because it’s not mature, has poor documentation, and Microsoft keeps nickeling and diming me for upgrades to get the tools that support Silverlight. I like ActionScript 3 and C#. I like Flash, AfterEffects and Premier Pro. I like Media Encoder from both products, but I favor the Adobe Media Encoder because I use it more, and I refuse to upgrade my Expression Studio.

    I agree with 18. Phillip above. If you are building a web application, use Flash. If you are building a LOB application or an Intranet application in a Windows environment, use Silverlight.

    I have tried to keep an open mind with both products because I really don’t care. It’s up to my clients what development environment I’m going to use. So I can use both, which makes me more productive. I love this stuff, and I don’t care who wins.

    +1
  30. 30

    ‘Microsoft will make sure Silverlight is only available to Windows systems.’
    FAIL

    http://www.mono-project.com/Moonlight

    +1

Leave a Comment

Yay! You've decided to leave a comment. That's fantastic! Please keep in mind that comments are moderated and rel="nofollow" is in use. So, please do not use a spammy keyword or a domain as your name, or it will be deleted. Let's have a personal and meaningful conversation instead. Thanks for dropping by!

↑ Back to top