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

Advertising
  1. 1

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

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

    0
  4. 304

    very nice article
    adobe flash is the best

    0
  5. 405

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

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

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

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

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

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

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

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

    TJ Holowaychuk

    May 10, 2009 8:14 am

    Microsoft is terrible I would never install or touch Silverlight

    0
  14. 1314

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

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

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

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

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

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

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

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

    fan boi garbage.

    0
  23. 2223

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

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

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

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

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

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

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

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

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

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

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

    0
  34. 3334

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

    Nice article

    0
  36. 3536

    Nice articles

    0
  37. 3637

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

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

    Daniel Greitens

    May 10, 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. 3940

    Massimo Bastianon

    May 10, 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. 4041

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

    leblanc meneses

    May 10, 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. 4243

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

    0
  44. 4344

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

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

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

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

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

    0
  49. 4849

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

    0
  50. 4950

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

    0

↑ Back to top