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 Animation1

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 Animation2

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 Flash3

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 Silverlight4

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 Script5

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 Basic6

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 Codec7

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 Processing8

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.

Accessibility9

Accessibility10

Accessibility11

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

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 Flash15

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 webcam16 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 object17.

Camera.get18 Returns a default or specified camera object, or null if the camera is not available.
Camera.setMode19 Sets aspects of the camera capture mode, including height, width and frames per second.
Camera.setMotionLevel20 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 Deployment21

Read the full documentation22 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 Streaming23

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)

Footnotes

  1. 1 http://www.webdesigndev.com
  2. 2 http://blogs.conchango.com/
  3. 3 http://wareseeker.com/
  4. 4 http://www.microsoft.com
  5. 5 http://actionscript.org/
  6. 6 http://joymon.googlepages.com/
  7. 7 http://technet.microsoft.com
  8. 8 http://www.prepresstraining.com/
  9. 9 http://lh5.ggpht.com/_D_LHhy5fi8o/SUQhlbxnK2I/AAAAAAAAADA/E34em8f43fw/WhistlerBlue_thumb.png
  10. 10 http://lh5.ggpht.com/_D_LHhy5fi8o/SUQhlbxnK2I/AAAAAAAAADA/E34em8f43fw/WhistlerBlue_thumb.png
  11. 11 http://lh5.ggpht.com/_D_LHhy5fi8o/SUQhlbxnK2I/AAAAAAAAADA/E34em8f43fw/WhistlerBlue_thumb.png
  12. 12 http://www.hochmanconsultants.com/articles/seo-friendly-flash.shtml
  13. 13 http://googleblog.blogspot.com/2008/06/google-learns-to-crawl-flash.html
  14. 14 http://www.accusoft.com/ig-silverlightformats.htm
  15. 15 http://www.adobe.com/
  16. 16 http://www.youtube.com/watch?v=qYmYkMYGp5s
  17. 17 http://www.adobe.com/support/flash/action_scripts/actionscript_dictionary/actionscript_dictionary119.html
  18. 18 http://www.adobe.com/support/flash/action_scripts/actionscript_dictionary/actionscript_dictionary124.html
  19. 19 http://www.adobe.com/support/flash/action_scripts/actionscript_dictionary/actionscript_dictionary135.html
  20. 20 http://www.adobe.com/support/flash/action_scripts/actionscript_dictionary/actionscript_dictionary136.html
  21. 21 http://www.microsoft.com/
  22. 22 images/Silverlight_Deployment_Guide.doc
  23. 23 http://msdn.microsoft.com
  24. 24 http://www.learn-silverlight-tutorial.com/
  25. 25 http://silverlight.net/forums/t/3015.aspx
  26. 26 http://www.shinedraw.com/multimedia/flash-vs-silverlight-apply-theme-or-style/
  27. 27 http://dobbscodetalk.com/index.php?option=com_myblog&show=The-Flash-Silverlight-Fight.html&Itemid=29

↑ Back to top Tweet itShare on Facebook

Advertisement
  1. 1

    It’s odd how the Flash users think this article is biased towards Silverlight and misses the benefits of Flash, and the Silverlight users and Flash ‘dislikers’ seem to read this article like it is biased towards Flash… As a long-time Flash user I think it unfairly misses some of what makes Flash a superb technology. As a lightly-trained Silverlight developer who works for .Net focused companies I feel it incorrectly weighs things up when really both technologies can do pretty much anything you’d ask of them if you learn how to use them. I don’t feel this article was a deep look at the technologies’ capabilities. But ultimately if you are a .Net developer you’ll think Silverlight rocks (largely because it gives you the power to create something that you used to have to turn to the mysticism of Flash and it’s developers for) But from a code point of view both .Net languages, and AS3 (including pixelbender and Alchemy) provide such fantastic capabilities a comparison should be less about features, and more about “which do you like to develop better?” It’s a personal choice – but for me, until Silverlight (player) has reached the adoption level of Flash (player) then it’ll be Flash whenever I need some ‘rich interactive blah blah blah’. For each case/project you should think of what markets you want to reach and then work out which technology provides the most easy/best/cost-effective approach, taking into account you and your company’s skillset – there is no true winner between these technologies – they are as much different as they are rivals – I hope people make their decisions based on their own research and testing and not fairly shallow comparisons.

    0
  2. 52

    Thank You SM,
    And to readers, the article is about pros and cons :)
    I know flash. Its great.
    I am learning Silverlight because of easy learning curve.

    0
  3. 103

    Is Silverlight the plugin that has made my browsing experience worse? In past times, clicking a pic link would open that pic, i.e. the browser would browse its way to that file and display it. Now, the current page dims, an Aero-looking spinning icon appears, then a new frame expands into view with my picture in it. And I can’t right click on it. And I have to aim for a tiny (sometimes nonexistent) ‘close’ button on the bottom of the picture. Pics are scaled, too, with no option for manipulating the size (which I am used to, being a firefox user with addons specifically for this task).

    Guess you could call it a strictly end-user persepective, but I FSCKING HATE THAT. I’m not even using Silverlight, or an MS browser for that matter!

    0
  4. 154

    I can’t believe one can compare the quality of flash’s animation tools with the toddler tools silverlight gives you. Flash’s animation tools are so many, there are a thousand and one ways to animate with it. You’re not limited to one tool, to fbf, to tween, to do swap symbol animation etc. It gives you so many options from beginer options such as basic tweens to the after effects advanced motion tween system with the ability to reuse animation. Silverlight has a long way to go in my opinion before it reaches flash level.

    0
  5. 205

    Charlie Hayes

    May 9, 2009 1:32 pm

    This article is wrong on nearly every item. The author of this article should be ashamed of themselves.

    0
  6. 256

    Oh wow….just wow. What a misleading article. I really expected better of Smashing Magazine; at the very least an editor could have done a quick fact-check of these points. Virtually every point about Silverlight is outdated by 6 months to a year, except for the ones that are completely wrong.

    For example, claiming that Silverlight doesn’t allow for the creation of a desktop app. Silverlight by definition is a subset of WPF, which primarily exists to create desktop apps. Also, deployment for most folks is just embedding a .xap file into your html with a single line of code – how is that complex? It also supports tabbing between fields, has audio playback support, supports sockets, etc etc.

    Again, I’m very disappointed to see this here. Criticism is one thing, but trolling a few message boards and rewriting half-truths as fact for a “legit” comparison is quite another.

    0
  7. 307

    @Leon: it is fun to read about Silverlight features outdated by 6 months, when author fails to mention things that were available years ago in Flash (mxml, media servers, h264 support and a few more) – so – please don’t complain ;)

    Oh, and as per pricing – I understand that people aren’t happy about paying for tools and I guess it is fine if you do open source or free work, but most people use Flash and microsoft tools to do real work, as in “for money”, so paying for tools isn’t really a big deal, especially that development services tend to be costly.

    As mentioned before – Flash development can be free – flex sdk is the way to go and it is pretty straightforward, but my choice here is Powerflasher FDT for Eclipse, it saves me hours of every project time.

    0
  8. 358

    Flash is my preference for obvious reasons. It’s has better file compression, integration with PHP, ASP and Ruby On Rails, it supports all image formats, it has webcam support, it’s easy to deploy and supports SWF, FLA, FLV and AS, all open-standard formats, while Silverlight is 100% proprietary. One more thing, I’m a Linux user, Silverlight doesn’t work on Linux.

    0
  9. 409

    I dont understand how SIlverlight can be better in Video/Audio?
    If im right you can play FLV, MP4, M4A, MOV, MP4V, 3GP and 3G2 with flash?

    0
  10. 460

    Richard Sakai

    May 9, 2009 2:23 pm

    Go with flash, Silverlight doesn’t officially support Linux and also Flash adoption is higher very close to 99% whereas Silverlight is much less.

    0
  11. 511

    No microsoft, i won’t install your bad attempt at stealing adobe’s market.
    Another reason why you shouldn’t use silverlight, you won’t reach stubborn people like me, less $ for your bussiness.

    Oh and, how the hell do you explain silverlight beating flash in video?!

    0
  12. 562

    Silverlight requires .net. That is a non-starter for me. Also, for those who have mentioned moonlight for linux and solaris, you obviously haven’t tried it. It is a poor cousin to Silverlight. The ONLY good thing about Silverlight is it will push Adobe to fix some of the weaknesses in flash.

    0
  13. 613

    Silverlight = DRM.

    0
  14. 664

    This article reflects a sound knowledge of author regarding these two products which are major market shareholders. It really gives me good overview of both technologies. Great!!! Keep it up.

    0
  15. 715

    oliver, priest

    May 9, 2009 2:49 pm

    I’m using Flash/(FLEX).
    Silverl. is kind of nice but .. meh … u know ;)

    0
  16. 766

    You really shouldn’t compare Flash to Silverlight, compare Flex instead!

    0
  17. 817

    Wow, I don’t even know where to start with the factual inaccuracies of this article. I hope that anyone seriously interested in learning the differences between Flash and Silverlight continue searching, and forget they ever found this page…

    Don’t even get me started on recommending outdated formats like WMV over codecs like H.264 because “everyone has access to Windows Movie Maker”…

    0
  18. 868

    This is a great in-depth description of these two technologies, and I like that it keeps an impartial tone. I tend to go with technologies that are compatible with most browsers (Flash), but have worked with both and they both have advantages and disadvantages. Excellent!

    0
  19. 919

    I think that its important to note that the author is refering to Silverlight 1 deployement when they say you have X number of files you have to deploy. Silverlight can be deployed JUST like flash and uses a .XAP file, which is really just a zip file (change the extension to zip to see the files) and can be embedded into an object tag just like an .SWF

    0
  20. 970

    Make sure you do the most important comparison of all – see how well your page works in Linux and Mac.

    0
  21. 1021

    FYI Silverlight does indeed compress application files. The client receives a .xap file which is a zipped, minified version of the client XAML and resources.

    0
  22. 1072

    Sorry for posting again.

    Besides the obvious, we can agree that both Flash and Silverlight have about the same scope of functionality, even if one has a slight edge over the other. If your goal is to stick an animation into a HTML page, then sure, I would say use Flash. I have been using flash for 6 years now, and come from a programming background. AS being a loosely typed language, rather sketchy intellisense and lacking some cool functionality to jump to methods by with the “go to definition” functionality MS tools have, I find that given you take the time get to know the IDE and power that access to all the core libraries that .NET has gives you, I dont think Flash will snuff out Silverlight. Then take into account how far Silverlight has come in a few short years, as opposed to Flash then we are starting to notice that Silverlight today might only be the giant waking up. Im not a MS fanboy, I choose the tool thats best suited for a job.

    From a personal perspective, I also have to mention that the Silverlight IDE compares well against the flash IDE and after a long day’s coding and recoding, my code just feel more manageable in Silverlight (if that even makes sense)

    0
  23. 1123

    Wow, after reading all the comments, it’s clear that this “comparison” does just as lousy of a job describing Flash as it does Silverlight.

    What’s even sadder is that I can count on one hand the number of commenters who are able to look past their biases enough to realize this.

    0
  24. 1174

    the only reason I prefer Silverlight, is because if I stream something full-screen in silverlight, it doesnt take up 40% of my E8400 (both cores…) to do it. Flash for some reason decides in needs almost half of my powerful CPU, and thats really annoying to me…. I’ve tried on XP/Vista/7, and flash behaves the same way.

    0
  25. 1225

    Chris Morledge

    May 9, 2009 7:15 pm

    Seems to be a few out dated or just plainly incorrect statements in this article. Plus some comparisons where not exactly like for like. Not of the high standard I tend to find on SM.

    0
  26. 1276

    You have animation and video won by Silverlight, I work designing for both platforms, and I would argue this conclusion as currently, Silverlight has no transparent video support, making it very difficult to implement smooth canned video animations, say, rendered in After Effects. Sometimes in the real world it is not practical to code animation sequences, and therefore the option to bring in a transparent video asset is priceless. Great article, I enjoyed it immensely. You are also brave for touching upon a topic that is bound to cause a flame war of bias and untruths.

    0
  27. 1327

    Another anti microsoft, mac-nix article from smashing. Stick to what you do best and go compile another “top ten jquery” article, and leave the writing of these articles to people who care enough to provide educated insight. As a designer who works primarily with ms tools (rare enough) I find the consant attempt to jutify a mac purchase a little tiresome.

    0
  28. 1378

    @Gonzobot: that’s ajax code, has nothing to do with Flash or Silverlight.

    @Lucky to call Expression Blend a “toddler tool” tells me you haven’t invested any time in it. Don’t confuse lack of experience with lack of capability.

    @Addi surely you’re kidding

    As for Linux users in the comments: well, you’re important for sure, and I want to see both tools have the broadest reach possible, but your web browsing market share is currently less than the iPhone’s. Just saying the web is a “nix world” doesn’t make it true.

    As to the article. I can only comment on the Silverlight inaccuraces (except for a few things that even *I* knew were wrong regarding Flash), but this article has so many issues that I’m embarassed to see it on the net. I hope folks who read it also read all the comments here so they can see just how wrong this article really is. It’s a research paper without any research, a supermarket tabloid-level comparison of two awesome technologies.

    XAML is absolutely compressed. At the very least, it is compressed by the standards-based compression method used for the application package – zip.

    On languages, don’t forget that you can use IronRuby and IronPython. There is no back-end server requirement, so all the same back-end technologies that work with flash (PHP, ASP, Ruby on Rails) all work with Silverlight. C# is an open standard language more so than ActionScript if you want to be picky. Silverlight’s support for .NET is a subset of .NET, not the “full power” or for that matter, full install and footprint, of the .NET CLR. 4.5mb gets you everything you need.

    Media: I can’t remember the last time I saw serious video done in Windows Movie Maker :P. On formats, why did you leave out Flash and Silverlight H.264 support? Please note that Silverlight 3 has native support for H.264 and also allows you to easily create your own codecs in managed code. Those same APIs can be used to dynamically create audio (see my synthesizer example here: http://bit.ly/FtCNs ). This approach isn’t as nice as what you get with Flash, but there is an example showing how to play .wav files as well.

    Accessibility: Silverlight has support for the accessibility APIs used by screen readers and other tools. It also has support for keyboard navigation. I seems you didn’t do much investigation there. I haven’t investigated Flash on this front, but my colleages on that side of the aisle tell me the accessibility support in Silverlight is much better.

    Platform: Silverlight 2 and 3 do not support PowerPC Mac. Linux support is provided by the Moonlight team – an open source version of Silverlight that runs Silverlight applications without requiring a proprietary player.

    SEO: Your example is really a red herring. Flash does not support indexing of the most important thing: dynamic content. What does it matter if field labels and static content can be indexed? That’s a pretty small part of the picture. Silverlight 3 and .NET RIA Services have a great SEO story, and fully support deep-linking into Silverlight apps. As with any RIA, it’s still more work than straight HTML, but the results are very promising.

    Sockets: It should be stated that the Socket support in Silverlight is true sockets support, not something that imposes another protocol over sockets. What Flash supports is not really sockets, so to say it is better is just silly. Perhaps compare Flash “sockets” with Silverlight WCF Duplex then.

    Deplyment: You are two versions out of date with your Silverlight deployment information. Silverlight requires one thing: a .xap file. The .js file is a helper just like the flash helpers out there. The .xap file is conceptually similar to a .swf, but is easily inspectable as it is based on the standard zip file format. The two are equal here with Silverlight having an ever so slight edge in that you can inspect the deployment package and alter config files and whatnot without resorting to a proprietary tool.

    Windows app: Most silverlight 2 code can be compiled as WPF with minimal changes. Not exactly a hands-off process though. In Silverlight 3, we have cross-platform desktop application support. Similarly, Adobe has AIR. Not sure why that was left out of your comparison. If you want a windows-only solution, there are free solutions out there that host Silverlight apps out of browser in windows with no code changes.

    Streaming: Silverlight 3 also support IIS Smooth Streaming.

    You also forgot things like hardware acceleration, easing, keyframe animation, behaviors, true multithreading, simple network access for SOAP, WCF, REST, JSON and other services, the 3d transformations and pixel shaders available in Silverlight 3, the awesome Blend tooling which truly integrates design and development for good round-tripping and many other things. You can also build Silverlight applications using free tools on Windows, Linux and Mac OSX (Eclipse4SL).

    While it’s hard to put together a good comparison between the two products, it’s obvious to me that you didn’t even try. Anyone who thinks this is non-biased simply didn’t do their homework.

    0
  29. 1429

    FWIW, this article is *so* bad that I would actually like to see it pulled. It does neither technology any justice.

    0
  30. 1480

    Jeff Putz said ” Silverlight is absolutely not suitable for use on home pages. ”

    You say that like Flash IS suitable to be a home page. Flash Web site, despite how often it is misused for this purpose. Web = hypertext, Flash is not hypertext.

    Silverlight is based on Xaml and is a reduced set of Microsoft’s WPF (Windows Presentation Foundation) application technology. Silverlight is just getting started. WPF is amazing compared to previous application technologies in its power, ease of use and fine graphics detail. Adding a hardware-accelerated pixel shader is as simple as adding an XML tag in a Xaml document. Latest demo I saw was a working 2-D control (a textbox) mapped onto a 3-D surface. When it can’t be hardware accelerated, it falls back to software rendering.

    These technologies will make it into Silverlight when it matures (3.0 due out this fall). The only thing slowing it down is making sure everything works cross platform (Linux / Windows, Mac).

    Flash will have a challenge ahead.

    Many more of the technologies in WPF will make its way to Silverlight, just give it time.

    …and yes, Silverlight technologies do work on Linux. Use “Moonlight”, the open source linux implementation.

    0
  31. 1531

    Silverlight deployment is simple as flash, flash file is a swf file, silverlight file is a xap file, why flash is better?
    And Silverlight can play as a windows application like flash in silverlight 3.

    0
  32. 1582

    This entire article has had shallow research on both platforms. I actually find myself disagreeing with majority of the points on both platforms not just the one i look after.

    I’d ask that the author reach out more to the owners of both brands to get a more detailed perspective in future – as clearly the comments beneath the article indicate folks are in vocal disagreement.


    Scott Barnes
    Rich Platforms Product Manager
    Microsoft.

    0
  33. 1633

    Note: Silverlight 3 is not released. So stop talking like Silverlight 3’s features are currently available. They won’t be for at least another 4-6 months.

    0
  34. 1684

    Extremely poor article. A lot of false information and representation, many vital points are missing.

    0
  35. 1735

    @Dude

    Silverlight 3 will be out “this summer” and is currently available in public beta. Otherwise, point taken. Even if you compare Silverlight 2 to the current version of Flash, this article doesn’t even come close to getting the facts straight on either side. It compares parts of the September 2007 release of Silverlight (Silverlight 1) with info from the Silverlight 1.1 alpha of May 2007 against some old release of Flash that didn’t support h.264.

    Silverlight 2 was released to production in October 2008.

    0
  36. 1786

    I think the article was not bad. It missed stuff on both sides – the biggest is it’s totally mistaken claim that SL isn’t compressed and requires deployment of several files. It is compressed and requires deployment of precisely one .xam file which is just a .zip file with different extension. My personal take is that flash has the better animation stuff and if you only need light programming and heavy animation it’s probably the way to go. For heavy lifting on the programming side, I’ve used both Flash and SL and C# is a much better language in a much better IDE for heavy programming than ActionScript. And if you don’t like it, use C++ or IronRuby or IronPython or J++ or F# or… There’s just no comparison when you’re comparing languages, especially when it’s a large family of languages for Silverlight vs. only one (ActionScript) for Flash. Also, Flash has been around for a LONG time which is good for it’s market penetration – definitely a point in its favor, but all these technical issues like Webcam, etc. – SL has come a long way in a short time and I can certainly expect that it will have all or most of them very shortly.

    0
  37. 1837

    Jasvinder Singh

    May 9, 2009 10:43 pm

    Nice article.
    Expecting some more article and resources on silverlight. Specially for designers

    0
  38. 1888

    That MS is given equal footing on Smashingmagazine – with their latest FUD encrusted crappy copycat “embrace and extend” technology – is quite dissapointing.

    Do not fall into the Microsoft patent trap. I smell MS payola in some of the comments here as well.

    Please f-off and die Microsoft – I for one remember J++, Internet Explorer 6, and no inclusion of Java runtime.

    0
  39. 1939

    I wonder why such a stories never change…
    Which is born before? The chicken or the hen?
    It seems that the comparison (and most of the comments) arise fron the radical hating for MS (as the richest Co), but not from objective reviews, instead.

    Techinacally speaking, I would have strongly separated WHO is using this kind of techonologies: I guess that SmashingMagazine is most a web-deisgner community, so the Flash solution will be always appreciated…no doubt!
    I am a desktop developer (not a web one), having LOB solutions in mind. I surely find better to share the same sources between desktop and web…the market uses MS at most: why have I to drive crazy developing in two-three different languages?…The costs are absolutely out of target…
    As a huge estimator of WPF, I still haven’t see anything similar as a compromise of: simplicity, realibility, flexibility and economy…anyway, I am ready to change my opinion…
    This is an HUGE impacting factor when developing a commercial solution!

    For the “crucial” choice between MS or “anyone else”…
    Adobe isn’t a saint: the Co. value is 1/10 the MS, but it is among the most powerful in the world…PDF, Flash, PS are proprietary formats, even “open”…what does mean “open”?
    As for me “open” hasn’t any particular meaning, because I must think that about 100% of customers do knows “PDF” as document format, have “Flash” installed (shipped with Win) and (probably) a PS-driver printer…

    So, please…tend to make reviews, comparisons and comments adherent to an objective point of view.
    Cheers

    0
  40. 1990

    Just repeat:
    “it is simple
    after all my effort given to flash doubtlessly i will stick with it
    no matter what silverlight or “goldenlight” might be”

    0
  41. 2041

    @Pete Silverlight 3 cannot be used for any live applications today, and is therefore entirely irrelevant to this comparison. There is not even a “go live” license for the beta of this product that’s available and the history of Microsoft announcements that use vague release dates like “this Summer” hardly sets any kind of precedent for believing it or basing any kind of decision on whether to use it for work being undertaken today.

    The article is (and should be) comparing what can be done (and released on the web) with products TODAY. Silverlight 3 CANNOT be used today to release anything on the web, so is irrelevant to the comparison.

    That being said, I agree that the article is unfair to both sides. But you only have to look at the replies here to realise that whilst those dissing the article for poor research and facts are equally culpable in their replies!

    0
  42. 2092

    It is really not fair to not mention moonlight because, imho, it will be (starting with version 2.0) a better silverlight on linux than the linux flash plug-in compared with the flash plug-ins for the other platforms.
    Silverlight 3.0 and Moonlight 2.0/3.0 will be not only an alternative to flash but also to Adobe Air on all platforms. Also Moonlight will probably be a nicer enviroment for making iPhone apps than Objective-J and the tools from the SDK if Apple plays nice.

    0
  43. 2143

    Using MIcrosoft? Of course!!! But only in jokes.

    0
  44. 2194

    I find it completely scary that a reputable design site is even considering the benefits of Silverlight. It’s Flash competition just for the sake of it. Just like Zune, they are doing something just so they can be seen to be competing in events they’ll never win.

    The only thing Microsoft has given the online community was IE 5 for mac. Since then it has only brought us down by providing incredibly poor products and forcing them upon the world. IE 6, 7 and 8 are all far below par and are holding back the entire development of the web. Anyone who actually designs and builds for the web knows this.

    The sooner Microsoft is dead the better. You can assist this process by not ever using their software and advising those around you to do the same.

    0
  45. 2245

    I have a note on the file size issue.
    Starting from Silverlight 2.0 it generates a .xap file which is actually a zip file that you can extract the various project files from, including .NET assemblies that contains xaml files.
    This means that the non compression technique discussed above is not valid on Silverlight versions 2.0 and later.

    0
  46. 2296

    the author should have compared flash and silverlight in terms of server push too

    0
  47. 2347

    good one! this time
    i m bored with logo n other graphics posts

    0
  48. 2398

    bassem zaitoun

    May 10, 2009 2:36 am

    Very useful article ya Muhammad

    0
  49. 2449

    I’m not sure about the exact stats, but surely php is a more commenly server technology, so surely this is a pretty good reason to use flash. MS servers cost alot more money to host on, most clients would be turned off by this.

    0
  50. 2500

    flash is the best for me

    0

↑ Back to top