Advertisement

Silverlight misconceptions, bad reviews, bad comparisons

UPDATE: Michael has posted a comment here and offered himself up to the gauntlet and apologized for his article.  He writes below:

Tim did me a favor with this article, and his comments on Connected Internet. I have left the article up on Connected, because frankly, I deserve the lumps I get over it.

Anyone who has spent more than 5 minutes talking with me, reading this blog, or listening to me on podcasts (Herding Code, Thirsty Developer, Misfit Geek) will know that I LOVE Microsoft.  I’m not ashamed to admit it and I’m not ashamed about my passion for the company or technology it produces.  I’m also not afraid to admit when and where we suck.  I don’t use every Microsoft product…if there are ones that I feel are better for how I use them, then I pick the better tools/technology.  There, bias stated.

I also think that I’m a fair person when it comes to comparisons and reviews and answering questions about competition, etc.  I welcome those conversations.  When I participate in them I do my best to be informed or point out where I’m not informed.  When not informed I try not to make definitive opinions until I have been informed by research or in trying it out for myself.

So you could imagine (like others) that I get frustrated when I see, hear, read things based on bad information, and what seems like no research has been done.  I’ve got thick skin, can usually comment and brush it off.  But today I read something that just triggered a twitch response in me that is making me reply.  It isn’t because of this post only, but because others have written articles on Silverlight that have used the same ill-informed bias.  The one that got me today was from Michael Lankton written for Connected Internet titled 10 Reasons Why Flash is Better than Silverlight.  Michael’s bio talks about him being an AV enthusiast and a corrections officer.  It briefly talks about him having ‘some coder and sysadmin in his history’ – here’s the full bio:

About the Author: Michael was a bass player in a hardcore punk band in the 80's and spent the 90's building and riding custom Harleys. As strange a combination as it may seem, Mike also has some coder and sysadmin in his history as well. At 43 Mike's now a husband and dad, and works as a Corrections Officer in a maximum security lockdown unit by day, and is admin at AV Enthusiast and contributor to Connected Internet when time allows. Mike is also passionate about food and travel.

So, bravo for Connected Internet for picking someone acutely aware of the landscape of the RIA space to do this comparison.  Oh wait.

A few people have commented on the post and JC being first had a lot of good points, refuting most of the bad information but Michael hasn’t corrected anything (despite saying so).  I’ve posted a comment offering to provide accurate information for him (and I’ll extend to anyone) in doing an evaluation.  You should be informed about the capabilities before doing things like this.  In that spirit, since there are some common misconceptions noted in Michael’s post that are incorrect, I had a moment of thought to note them (which others have already added their comments as well).

Michael’s intro paragraph says “you have better options for embedding video and audio content into a web page” than Flash or Silverlight.  Really?  Is this the wondrous HTML5 you speak of?  That isn’t complete, only supported in certain versions of browsers and requires likely a different encoding of the media than you already have?  Yeah, thought so.  Let’s be honest.  Flash and Silverlight are *the* ways to leverage media in mainstream applications today.  Are there alternatives?  Sure.  Are they more pervasive?  No.  On to the article after this little intro correction now.

1. Platform compatibility. 

MYTH: Michael notes the platform where we are supported and on Mac says “only just recently too.” 
FACT: Silverlight has been supported on Mac platforms since it’s incarnation.  The current managed code versions are supported on Intel-based Macs only.  A simple check of the system requirements would have found this.

In the comments Michael states that what he meant by this is that .NET is required.  We’ll get to that in point 9.

MYTH: Windows servers are required for Silverlight.
FACT: You could serve up Silverlight from your Samba share if you want.  Silverlight is a client technology…we don’t care what is on the server.  The only thing we require (for security) is that the XAP must be served with the right content MIME type (application/x-silverlight-app).  That’s it.  And every web server out there can have this MIME type.

2. Market penetration.

Our latest install statistics we see from our downloads, etc. as announced at MIX09 put us around 1/3 market penetration.  This is continuing to grow.  I honestly don’t have daily visibility to this number to give you current stats.  Michael makes a note “Not sure about that, as some independent studies show it as low as 6%” – um, cite the study?  If not, that’s a blatant assumption.  Heck even the much disputed riastats.com shows penetration at 34%.  Again, cite the source, or move along.  I even cite riastats.com here, although that’s not the benchmark that Microsoft uses…but at least I’m citing where I pull the number from (the 34% number, not the 1/3).

3. 64-bit web browser support. 

It’s funny that in the comments Michael says to a commenter not to talk about beta technologies, yet in this point here that’s all the evidence he has: An alpha of Flash for 64-bit.  Silverlight doesn’t have a 64-bit plugin.  Neither does Flash.  Enough said.

4. Supported image formats.

I couldn’t find a definitive source on what image formats Flash officially supports with no extensibility, but I think it is JPG, PNG and GIF (someone cite a source if you have better data).  True, Silverlight doesn’t support GIF.  I’m not upset about it.  Guess what though…we have an extensible platform and if you absolutely need to support your GIFs from 1997, you can.

5. Package Delivery.

MYTH: Silverlight files are loose and uncompressed.
FACT: Silverlight files are packaged into a XAP file which is a standard compressed/archive format.

In fact, just rename to .zip and use your favorite tool to see the contents.  If you think your favorite tool can get even better compression…feel free to recompress again.  We think we have decent improved compression. 

Oh and we also support cached assemblies, partitioning applications, and other techniques to minimize the size of your application base file.  This point tells me he’s evaluating on Silverlight 1.0 (which didn’t leverage the XAP package and was in fact loose files – which could be gzip/deflate compressed by the server btw).

6. Audio.

MYTH: Silverlight does not support APIs for generating and controlling audio.
FACT: Silverlight has a MediaElement control for controlling audio/video, MediaStreamSource API for providing your own decode/logic and APIs for RAW audio, video stream. 

Again, do your research.  Samples available for this here (extensible media format support sample) and here.

7.  Portability.

I’m not sure his description of Flash’s abilities here are even accurate.  I *think* he may be talking about just running a SWF file using the standalone Flash player, but I wonder if he also means AIR here as well.  I’m just not sure (and he doesn’t indicate).  Silverlight has the capability to run out-of-browser.  Is it a full-trust application like AIR?  No.  But again, he doesn’t clarify here what he’s referring to.  Sure Flash has a standalone player, but I can’t remember the last time I played only a SWF.  If referring to AIR, there are some comparisons that could be drawn, but bottom line is you can run Silverlight applications out of the browser.

8.  Accessibility.

MYTH: Silverlight is not an accessible technology.
FACT: Silverlight can be developed with accessibility in mind.

Michael points out “changing color schemes” and I think is referring to high-contrast mode.  Yes we have that.  But we also have caption support for media files and have the ability to integrate with other accessible technologies.  Here’s some resources:

  • Accessible Media Project (full open source implementation of an accessible media player).  Note: that this is built upon *existing* APIs that are built-in to the product.
  • Accessibility in Silverlight with Mark Rideout here and here.
  • Buttercup Reader – an implementation of an accessible application in Silverlight.

9.  Client-server communication.

MYTH: You must use .NET server technologies for service communication on Silverlight.
FACT: Silverlight can communicate with ASP.NET web services, WCF, SOAP services and REST APIs.  ASP.NET on the server is not required for client-server communication.

Michael’s assertion here is simply incorrect.  Silverlight has a network stack available to developers to communicate with servers/services of all kinds and also includes a Socket implementation if you so desire.  This is just completely false what Michael notes here.

There are some technologies we are developing (.NET RIA Services) that do require .NET on the server and provide a better experience for developers using Microsoft technologies front-to-back.  This, however, is not a requirement of Silverlight.  Use your Ruby REST api if you’d like.

10.  3D rendering.

I’m definitely not an expert in 3D.  I have to admit I don’t know the capabilities of Flash in this regard.  Silverlight does, however, support perspective 3D (taking a 2D object and putting it in 3D space).  Do we have full on support for 3D meshes, etc.  No, we don’t right now.  I *think* (again, Flashers correct me if I’m wrong) that Flash’s implementation is similar based on some quick search research.  I’m willing to admit I’m wrong here on their implementation.

We do have several ways to extend 3D type models though:

  • Kit3D – an open source 3D graphics engine for Silverlight.
  • Balder – a managed game engine with 2D and 3D support.
  • Zam3D – a commercial product for exporting 3D environments to XAML

As for game development.  Sigh.  Yes it can be done.  In fact how about a platform that lets you reuse technology to develop a game for desktop, browser, XBOX and Zune?  Check out Silver Arcade for some casual games that people are developing.  We’ve also got a thriving ecosystem around physics engines that are open source as well!  Casual games not your thing?  How about Quake in Silverlight?

Michael ends his article with these words (emphasis mine):

I have a platform to express my opinions, and they are generally backed up with solid experience or data to justify them. I am not always right, and I welcome anyone who disagrees with my thoughts on Microsoft’s Silverlight to begin that discussion in the comments section.

Michael – you have been engaged in the comment section and haven’t corrected where you are wrong.  Your opinion, this time, is not backed up with solid experience or data.  Period.


This work is licensed under a Creative Commons Attribution By license.

  1. 8/21/2009 8:14 AM | # re: Silverlight misconceptions, bad reviews, bad comparisons
    I appreciate that you took the time to provide feedback on the article with solid examples.
  2. 8/21/2009 8:21 AM | # re: Silverlight misconceptions, bad reviews, bad comparisons
    Thanks for the counter-rundown. Always good to read fact-supported and objective comparisons such as this - particularly in areas which are notoriously contentious (e.g. anything that steps into pc vs mac or microsoft vs the world territory!).
  3. 8/21/2009 8:23 AM | # re: Silverlight misconceptions, bad reviews, bad comparisons
    Tim,

    If you respond to every stupid troll post then you'll never have any time for anything else ;-), but thanks for the above which makes some good points very eloquently.

    I DO think you need to be careful when criticising Michael's "relatively recently" point though since it's a common Microsoft marketing message to point out how recent Silverlight is, how quickly it's grown and how quickly you've got new versions out. Personally I don't necessarily think that's a good thing (if quality suffers or key functionality is still missing 3 releases on) but if Microsoft are going to keep emphasising how quickly they're rushing this stuff out, grabbing market share etc I don't think you can really blame a guy for using the term "relatively recently" (especially when there's so much other nonsense to criticise ;-))

    As with any company there are good marketeers and bad ones (who'll obfuscate and sail very close to the wind in the claims they make). Michael is clearly an example of one type but there are many others - some within Microsoft! I personally find the endless repetition of "good" Silverlight stories as fact (when the most basic investigation will usually reveal the picture is nowhere near as rosy as has been painted) from Microsoft shills does nothing to avert the "Microsoft can't be trusted" viewpoint that causes articles such as the one you've mentioned to be written in a mixture of heavy bias and dislike.

    But heh! You're definitely one of the good guys - someone who clearly understands marketing (in its good sense), hard work and getting facts right - and I for one appreciate what you do. So thanks, and hopefully Microsoft recognise the contribution you make to the Silverlight community.
  4. 8/21/2009 8:29 AM | # re: Silverlight misconceptions, bad reviews, bad comparisons
    Tim, good job with the counter points. Articles like the one you cited seem to come out all too frequently for my taste. As a consultant I walk into many companies and have to dispell these fallacies with truth and facts. The problem is that people read these articles, are lead to believe the fallacies about Silverlight, and then move on. There is very little editorial process in many of these articles, even the paid ones, to make sure that the facts are backed with sources.
  5. Gravatar
    8/21/2009 8:41 AM | # re: Silverlight misconceptions, bad reviews, bad comparisons
    Great read and thanks for challenging the author to correct his article. On first read it was so blatantly misinformed I wasn't sure if I wanted to take the time to respond.
  6. 8/21/2009 8:56 AM | # re: Silverlight misconceptions, bad reviews, bad comparisons
    Great article Tim
  7. 8/21/2009 9:01 AM | # re: Silverlight misconceptions, bad reviews, bad comparisons
    I am glad you responded to this article. I read it earlier today, and could tell there were many inaccuracies. Unfortunately my knowledge of Silverlight is limited, so I chose to not say anything innacurrate. Obviously Michael didn't do the same thing.
  8. 8/21/2009 9:09 AM | # re: Silverlight misconceptions, bad reviews, bad comparisons
    Good counter points Tim, as usual.

    One issue is the commentary on audio generation, he might mean the ability to utilize the microphone or camera on a user's desktop. Silverlight doesn't have this and has been an issue for more than one of my projects where we needed to tie into the microphone for audio recording for doctors. We worked around the problem by using an ActiveX control and building a Javascript bridge that could execute methods on the ActiveX control, but this was a major pain, didn't work all that well/consistently, and didn't meet the client demands for installation / delivery requirements.

    We are hopeful a future release of Silverlight WILL address true audio and video generation from the client, though I've not seen any roadmap to indicate that it will.
  9. 8/21/2009 9:37 AM | # re: Silverlight misconceptions, bad reviews, bad comparisons
    Tim

    I ready Michaels article as well and was shocked by how poor his knowledge of the facts were which I kindly informed him of in a comment on the article. Thanks for the counter argument
  10. 8/21/2009 10:08 AM | # re: Silverlight misconceptions, bad reviews, bad comparisons
    Way to go Tim! I wasn't sure about the validity of Michael's article...but I am now!Thanks
  11. 8/21/2009 10:09 AM | # re: Silverlight misconceptions, bad reviews, bad comparisons
    Great post Tim. Wanted to add my own comments.
    1. I agree, but is "not the latest version" count? Adobe used to do this too and it annoys me.
    4. Yes, Flash natively can load JPG, PNG and GIF. PNG can be loaded with a library (think it is in here) http://code.google.com/p/as3corelib
    10. Flash and Silverlight native 3D support is about equal.
  12. 8/21/2009 10:40 AM | # re: Silverlight misconceptions, bad reviews, bad comparisons
    I remember when I was running my ISV and read 20 publications a month, and remember seeing tons of "technical writers" just blow empty gas out of their mouths all the time. Worst case is that business decision makers are reading this and thinking it's valuable insight. *sigh*

    Great job on clearly detailing the wrongs of the article.
  13. 8/21/2009 10:47 AM | # re: Silverlight misconceptions, bad reviews, bad comparisons
    Great Article Tim ! just today there was session by Microsoft India in their VTD event on Silverlight in PHP apps better together,Great to see SL supporting different verticals.like John said above,as a consultant I always get questions from client about "Stability" of Silverlight, I guess this is good article to pass on to them, Thanks.
  14. 8/21/2009 11:30 AM | # re: Silverlight misconceptions, bad reviews, bad comparisons
    Tim thanks for making this post. I was sickened when I read Michael's article, and it just goes to show that one should do some research before writing about something they know little or nothing about.
  15. 8/21/2009 11:45 AM | # re: Silverlight misconceptions, bad reviews, bad comparisons
    Ian -- his 'recent' point was about Mac support -- I was only calling that out as incorrect. Mac support has been there since day 1. As always, great points on the other comments though! Cheers!

    Paul -- if audio generation from peripherals is what he was talking about, then it is valid. We currently don't have webcam/mic support as you note...and all those hacks make me feel dirty :-)

    Steve -- thanks for clarifying Flash image support and 3D support. Is PNG loading *only* available through the library?
  16. 8/21/2009 12:12 PM | # re: Silverlight misconceptions, bad reviews, bad comparisons
    I don't understand what is the point of having two technologies that do the same thing! Its better to have one technology that is open-source so its easier for developers as well as users.
  17. 8/21/2009 12:24 PM | # SL misconceptions with shared hosters
    Can anyone tell me why a shared server provider (in this case Fasthosts UK) would not want to add the SL mime type for IIS as part of its Windows Developer offering (they boast ASP.NET 3.5). I've been requesting this since SL 1.0 - I'm reluctant to make a change because Fasthosts have offered a good service to date but I really want to do some SL work. I get the lame excuse why would I want Silverlight when Flash does the job or SL would need to be tested but hardly anyone's asked for it (sigh).
  18. 8/21/2009 12:32 PM | # re: Silverlight misconceptions, bad reviews, bad comparisons
    Great article Tim!
  19. 8/21/2009 1:13 PM | # re: Silverlight misconceptions, bad reviews, bad comparisons
    As someone who is brand new to Silverlight development (and web application development in general), it's encouraging to hear the the facts sorted out in a straightforward way. It's hard enough to choose which technologies to learn, especially when everything is changing so fast.

    Tim -- looking forward to your keynote tomorrow at the Atlanta Firestarter!
  20. 8/21/2009 1:35 PM | # re: Silverlight misconceptions, bad reviews, bad comparisons
    Tim did me a favor with this article, and his comments on Connected Internet. I have left the article up on Connected, because frankly, I deserve the lumps I get over it.

    I will say that in some 100,000+ words contributed to Connected Internet, I may have exhibited an opinion you might not have agreed with, but I have never been wrong in the way my Flash vs Silverlight comparison was wrong. I could blame my web sources, which included Microsoft's Silverlight forums, as the source of my misconceptions, but it still fell on me to spend more time on the comparison and to pay attention to how old my sources of information were.

    Lastly, having always been a unix guy, I have never had much love for Windows and things Microsoft. I haven't gone out of the way to be an anti-Microsoft evangelist, but I haven't kept my opinions to myself either. I'm afraid that yesterday I fell guilty to what Linus Torvalds qualified as a disease, which is hate of Microsoft.

    I should know better than this, because despite whatever aversion I have toward them, I also know that Microsoft has a very good recent history in the area of developer tools.

    I won't make this mistake again, and you can expect an article that is properly researched regarding the merits of Silverlight, and probably one about having your facts straight when you put your name to something on the internet.

    In the future, I will stick with subjects that I have a firm handle on, as I have in the past. The content that I produce for Connected Internet is an enjoyable pursuit for me, and something that I take seriously whether I'm writing for someone who doesn't have a lot of savvy or for someone whose expertise eclipses my own. The reader deserves to be given better. I really don't care if you find me to be an idiot after reading, provided I have my facts straight. In this case I didn't, and I apologize.
  21. 8/21/2009 1:36 PM | # re: Silverlight misconceptions, bad reviews, bad comparisons
    Regarding the RIAStats.com, I believe the pie chart is based on an average of the past 30 days. The 6% could be from what was displayed a few days ago. There's a "line-graph" option that shows the % for each day, but it doesn't appear to have been updated since Aug. 10th, which showed around 23.25 for Silverlight 3 alone then.

    Regarding the pie chart, something interesting is happening. About 4 days ago it shows aroudn 4% (+/-) a few 10ths of a point. Each day the 30 day average seems to increase about 2%. Today I checked it and couldn't believe it was up to 10.79% already. This is a significant increase over the past 4 days considering its a 30 day average. I'll be interested in seeing how high the daily % is on the line graph once it's updated...
  22. 8/21/2009 1:43 PM | # re: Silverlight misconceptions, bad reviews, bad comparisons
    I participated by writting a comment on Michael's article.

    If I would have been a FLASH developper, I would have dislike the article anyway
    Just to tell that from the developer point of view the article makes no sence just because there's no comparison to do. It's just serving different developer background.

    I started with BASIC 1.0 to be with C# and Silverlight today and I'm very proud of the Silverlight Team and all the blogers here at Silverlight.NET I would like to thank you all of you for the great work you're doing.
  23. 8/21/2009 1:47 PM | # re: Silverlight misconceptions, bad reviews, bad comparisons
    Thanks, Tim. Forever running into misinformation and someone has to stand up to it. Your reward is two-fold.
    (1) You have armed us with clear explication to clear the fog
    (2) The author fell on his sword ... and posted a mea culpa in italics. It should be at the head of the article, not the foot ... but you can't have everything and crow is tough to eat.
  24. 8/21/2009 1:56 PM | # re: Silverlight misconceptions, bad reviews, bad comparisons
    Indeed it is.
  25. 8/21/2009 1:57 PM | # re: Silverlight misconceptions, bad reviews, bad comparisons
    Tim, you're right to clarify all those things. Unfortunately I don't think a lot of flashers will come here to read your words...
    On the other hand, a few things are missing in Silverlight. I'm a Silverlight geek (I know Jesse Liberty is the official one :-) ) but I know some features must be extended. Time is the key. of course. Even MS can't create the world in less than 6 days...
    But to be honest, I was disapointed when I understood 3D support in SL3 was only a perpespective trick and not a true 3D support. Ok, we'll wait bit, but a modern RIA development tools without true 3D is perhaps still not a true challenger... You're speakin about sound. Well.. Frankly, the minimum basis to create the smallest game is to have a running music in the background. Did you try ? It's hell. MediaElement has no "loop mode". And all tricky ways to get it let a very bad blank (about 1sec, sometimes worse). And the Media API is certainly not a simple and easy solution (untill this day I was not able to find just 1 good example to create a music loop with SL3, if you have one, publish it please!).
    So, certainly Michael is wrong. It's just another guy who's speaking about competitor's product without having any solid knowledge about it. Internet is full of such guys !
    But since here we are all MS lovers and Silverlight geeks, that said we must admit SL4 has to be a very good release including true 3D and sound loops if we want it to be a serious competitor to Flash/Air !
    Until this day, we are letting the door wide open to people like Michael, and you can blog all day long to say Michael is wrong, the best answer to Michael will be a good Silverlight 4 release including what is missing to be, not as good as Flash, but better than Flash. Who wants to change his development tool for something that very near to his current tool ? Nor you, nor me. We change only when the new product if _far_ better than the one we're using. Today Silverlight 3 is a fantastic product, but I can understand, on a flasher point of view, it is not "far better" than Flash.
    We all must work to be sure SL 4 will be That release. And a good demo will then stop people like Michael because like Napoleon was saying "a good drawing worth a thousand words" ! :-)
  26. 8/21/2009 1:58 PM | # re: Silverlight misconceptions, bad reviews, bad comparisons
    Ward - agreed and noted in edited post header.

    Michael - as I indicated on your blog, bravo for admitting when you are wrong.
  27. 8/21/2009 2:01 PM | # re: Silverlight misconceptions, bad reviews, bad comparisons
    Great article Tim.

    It looks like Michael Lankton manned up and posted a revision admitting his article was seriously flawed and apologized for the content. You have to give him credit for that.
  28. 8/21/2009 2:04 PM | # re: Silverlight misconceptions, bad reviews, bad comparisons
    Oliver - you are dead on on things we need to improve upon (yeah, where the heck is loop mode?!?!). True 3D done right requires more then just software dependencies and those are things we need to balance versus fixes and other higher priority items. I must reiterate that the Silverlight team is not unlike other teams with a set of developers, a budget and a scope. There isn't a thousand people working on it and we have to balance goals of the scope/timelines and costing around what we feel we can deliver.
  29. 8/21/2009 2:25 PM | # re: Silverlight misconceptions, bad reviews, bad comparisons
    Thanks for the great defense! It helps us who are out there competing now with Flash in bidding for the project; defense like this ensures that the decision makers who are searching Google "Silverlight vs Flash" sees correct information. Also blog like this serves as great reference to make sure decisions are not biased when choosing Silverlight or Flash. Thanks again.
  30. 8/21/2009 3:14 PM | # re: Silverlight misconceptions, bad reviews, bad comparisons
    Great article, Tim
    Keep up the good work!
  31. 8/21/2009 3:29 PM | # re: Silverlight misconceptions, bad reviews, bad comparisons
    Cheers, Tim! I'm a PC too!!!
  32. 8/21/2009 4:04 PM | # re: Silverlight misconceptions, bad reviews, bad comparisons
    Tim - I guess to be totally accurate, you can load a png, but you can't display it without decoding it. Decoding library is at the link provided.
  33. 8/21/2009 4:04 PM | # re: Silverlight misconceptions, bad reviews, bad comparisons
    Very good job, Tim
    Now I can see very well why Silverlight is so great.
    Thanks again.
  34. 8/21/2009 4:15 PM | # re: Silverlight misconceptions, bad reviews, bad comparisons
    @Ankit

    You're absolutely right. I for one would prefer a world with only one bank, only one brand of car, only one tv channel. I mean, why have more than one when they're all doing the same thing?

    Pete
  35. Gravatar
    8/21/2009 5:37 PM | # re: Silverlight misconceptions, bad reviews, bad comparisons
    One other aspect about Silverlight that goes unsaid and hasn't had a fair share of glory is the joy and delight of designing and developing Silverlight applications. The fun factor is real!

    @Pete: Your world would be pretty boring and would suffer from lack of innovation. Silverlight has added one more element that Flash has lacked over the years - Business (Intranet) applications in various industries.
  36. 8/21/2009 5:41 PM | # re: Silverlight misconceptions, bad reviews, bad comparisons
    Tim,

    I get this all the time, Microsoft technologies are lacking, by people who have not done their research. They think it so some kind of comic book discussion, Who is faster Superman or the Flash. All this stuff it testable, do the test and learn from the experience, then share it with others. Thanks for sharing, I will use this entry as an example.
  37. 8/21/2009 6:39 PM | # re: Silverlight misconceptions, bad reviews, bad comparisons
    Steve - thanks for the PNG clarification. That really surprises me. I would have thought Flash 9 or 10 can decode themselves. Seems like in fact we may have a leg up on that one ;-)
  38. 8/21/2009 10:58 PM | # re: Silverlight misconceptions, bad reviews, bad comparisons
    It helps us who are out there competing now with Flash in bidding for the project
  39. 8/21/2009 11:47 PM | # re: Silverlight misconceptions, bad reviews, bad comparisons
    Great work Tim. I love Silverlight, and have no problem complaining about some of its short comings.

    However, there are these "people" that just want to trash SL, and spread lies(I define lies as never correcting their statements after being informed).

    My criticism of SL is designed to help improve the product. Flash was great in its day, and Flex isn't too bad either, but IMO, SL has a much higher ceiling, and that's why I've move over to develop in SL(threading is huge for me).

    So, while it takes time to rebutt these dudes, I'm glad someone from the MotherShip(lol) lobs a few IED's at these clowns.
  40. 8/22/2009 11:09 AM | # re: Silverlight misconceptions, bad reviews, bad comparisons
    Hi Tim,
    There is another extremently important point to keep in mind.
    The programming experience.
    I work almost entirely with Microsoft technologies, but recently I worked on a Flash project. It was a great opportunity for me to compare.
    There were two main advantages to Silverlight that struck me:

    1. The IDE. You just cant compare the polish and programming ease of Visual Studio. All components are integrated beautifully with the power of the CLR itself. Flex Builder, built on open source Eclipse just pales in comparison.
    Apart from some help with refactoring most of the time I felt as if I was progamming with notepad.

    2. Infinite Possibilities
    I found it all in Flex. Databinding, WebServices, Syndication, styles, datatemplates (itemrenderers) - the works.
    I could do anything I could think of in Flex.
    But with Silverlight and control templates the possibilities are actually infinite. I know that even things I cant think of are possible.
    Maybe I didnt look hard enough, but I didnt find control templates in Flex.

  41. 8/22/2009 2:02 PM | # re: Silverlight misconceptions, bad reviews, bad comparisons
    Your comments are valid, but Microsoft has left itself open to this kind of abuse by actively choosing to compete head on with Flash. The .NET/WPF Framework is massive and really impressive. But the elements chosen seem to have been selected to meet this objective which seems to be complemented by a drive to have the run-time fit within 4MB.

    A more complete .NET/WPF implementation could really diffentiate Silverlight unambiguously. 3.0 is a new departure which offers some great features like plane projection, effects and support for WCF faults but there's now a lot of water under the bridge and significant scope for misinformation.

    Many seem to want 3D but I'd like proper REST support. Yes, 3.0 introduces support for more verbs but no access to the authorization header (at least I'm not able to access AWS using GET and POST). So developers have better REST support but only over HTTPS or to unsecured sites, This wouldn't be an issue with a more complete .NET implementation.

    There are genuine differences arising out of the environments (desktop vs browser) - hit testing for example - but so many seem artificial. Why can I create a writeable bitmap of rendered content or update pixels one by one - but not include pixels from one of my own external images unless I use a component able to hack the contents of png file? Why is AES the implemention cut down?

    Of course, there are budgets and there are scope constaints. But there's also positioning. The .NET Framework could offer much, much more than Flash (and maybe it already does). But maybe not so much more within a 4MB download constaint. My internet can connection cope with more than a 4MB file. So can my mobile phone's internet connection.
  42. 8/22/2009 6:38 PM | # re: Silverlight misconceptions, bad reviews, bad comparisons
    @Bill, I think they have been working on such a direction now. The biggest worry they always bear is the security as Silverlight can run inside a browser window and they don't want to get into troubles as such introduced by ActiveX. Anyway the new HTTP stack is just a significant sign showing that they really want to do something beyond the browser network stack. But it is also required to be very cautious.
  43. 8/22/2009 8:08 PM | # re: Silverlight misconceptions, bad reviews, bad comparisons
    Obviously that was a dumb article...

    Flash can do Jpegs with transparency, that is very handy. It also can smooth pngs. I have not idea what steve is talking about with loading pngs, you can do that in flash, and have been able to for 8 or so years.

    The install base HAS to be by version, esp when some points you are making are only in newer versions. And for that matter, even 75% will still be a problem.

    File size will pretty much always be bigger in Silverlight. It is the same as SVG, there is just more info there. The xaml doesn't help either, in spite of compression tricks.

    What silverlight needs to do to win:

    - Drop the stupid xml format for something binary. It would become a harmless add on if the base was a solid binary 'strict' format, but as the base it causes endless problems with display, tooling, scaling etc. Basically you can very easily create xml that has no predictable result, while this is impossible in the swf format (the file is either correct, or invalid, there is no 'well give it a try and see what happens'). This is huge and silverlight will never win with it.

    - a lot of the inherited legacy of xaml never worked and was rarely used. SMIL for example. I have no idea why a company as smart as MS stuck that in there.

    - It really really really can't be saddled with pushing the MS platform too. It does in many ways now, and that totally hurts it. Its hard enough to get people to use something free and good, it doesn't need the extra baggage.

    - a lot of the svg vector format is in there because it is interesting to people writing rendering engines. Self intersecting beziers, winding rules, unmergable objects etc. That is totally useless to artists. The flash vector system is way smaller, way faster, and way more natural for artists.

    - the flash file format is basically invisible to artists and even most coders. Silverlight is in your face constantly, and often spitting at you.

    Why it isn't too late:

    - C# is the best language of the day, by miles.
    - VS is a great IDE
    - The flash vector format is great, but it could be improved a lot too. It is 10+ years old and there have been tons of lessons, and tons of discoveries since. The answer is not 'SVG like' though, that has to be scrapped.
    - MS is usually sensible enough to internally evaluate thing honestly, and make corrections even if they are painful.

    (MS should do an improved flash format as a second project, and let xaml run its course).

    Always ready with opinions : )
  44. 8/23/2009 2:41 AM | # qs
    I have a question about silverlight.
    How can i add a new webform in my silverlight web?infact when i make a new silverlightpage then i cant't add a webfore(default.aspx)

    thanks.
  45. 8/23/2009 7:56 AM | # re: Silverlight misconceptions, bad reviews, bad comparisons
    @Robin Debreuil

    The extensibility of Flash file format (let's not talk about MXML yet), from my point of view, is poor. XAML provides much better extensibility and one day you can even design some high level things, eg. work flow, in a declarative way on client side. There are already signs of such happening regarding the new features in Silverlight 3 with Expression Blend 3.
  46. 8/23/2009 9:15 AM | # re: Silverlight misconceptions, bad reviews, bad comparisons
    @Lixin

    The flash file format isn't extensible, that is a good thing.. Or do you mean extending things like components? If component frameworks written on top of the basics are poor, people can always work around them or ignore them. If the basic premise is poor (like in many low level aspects of Silverlight) you are stuck.

    Flash: Solid base, solid mechanical level, many poor high level systems (mxml)
    Silverlight: Poor base, reasonable mechanical level, many good libraries

    It is the basics that makes everything else suffer. I think ultimately the problem is Xaml (and svg, and most things xml) don't separate the editable format from the export format. So I can make graphics/animation/libraries that run in the player, but it won't work in the tools. To work in someones tools you need to work in a subset of the format that that tool chose to work with, each tool being different (there is no standard for this because there is no format). Yuck, never will fly.
  47. 8/23/2009 10:08 AM | # re: Silverlight misconceptions, bad reviews, bad comparisons
    @Robin: If XAML is such a bad idea, why is Flex 4 / Flash now trying to scramble and implement the same thing using FXG.

    Fact is having XAML enables core designer / developer workflow, allowing designers and developers to work on a project concurrently. Currently in Flash you are still stuck with the one-time designer photoshop handoff and the developers having to chop it up.

    That is one of the strengths of Silverlight, but you are proposing to scrap that and go back to a proprietary binary format noone can make sense of.

    Internally XAML can be compiled to a binary format (BAML actually) and integrated as a resource into assemblies. WPF does it this way.

    And XAML, being XML compresses pretty well using standard algorithms like zip. It allows your application to be more explorable and discoverable, the content is not hidden or obfuscated in some arcane binary place.

    I think XAML is one of the key strengths. Also it allows you to use your WPF skills for internet development.

    Just my 0.02
  48. 8/23/2009 5:06 PM | # re: Silverlight misconceptions, bad reviews, bad comparisons
    Sorry to be one few non-Silverlight fans here, but Silverlight isn't living up to the hype. MS announced that there would be a Silverlight for mobile years ago . . . it still hasn't arrived. And I'm very curious to see if it will be the same Silverlight or a "Silverlight Light" version. To add to it, some major sites that initially signed on to Silverlight, including MLB.com, dropped them and it still doesn't do text well. And by the time Windows Mobile 7 actually comes out, Apple will have added a new "cool" touchpad type device and I'm guessing that it probably won't support Silverlight.

    But the real truth is that HTML 5 is where the future of SVG in the browser will take place, not Flash or Silverlight. While MS has been focused on delivering a proprietary plug-in architecture for the web, everyone from Apple to Google has been working to implement the new HTML 5 specs into their browsers. Instead of focusing on Silverlight, MS should instead focus on HTML 5.
  49. 8/23/2009 9:14 PM | # re: Silverlight misconceptions, bad reviews, bad comparisons
    nice reply
  50. 8/23/2009 9:34 PM | # re: Silverlight misconceptions, bad reviews, bad comparisons
    I really do not see what the big fuss is about anyway. Flash vs. Silverlight or whatever you want to use. the whole point is for the developer to use something that he is comfortable with and the endresults that the satisfies the customer. I have to admit that I am a former employee of Microsoft and while I am not an evangelist I did enjoy working for Microsoft and love their products. With all that said I will say that I tried flash years ago. I don't hate it but prayed for the day when microsoft would come out with a competing product. I will not say that silverlight is better or worse than flash but i will say that I am able to leverage my skills as a C# and VB developer to do some pretty cool stuff with a lot less effort.
  51. 8/23/2009 9:49 PM | # re: Silverlight misconceptions, bad reviews, bad comparisons
    @John,

    Its funny that you are knocking MS for not releasing Silverlight Mobile, but talk about the "cool" Apple touchpad. Who cares? If I write an iPhone app how many places does it run?...one. Silverlight runs on: XBOX, web, desktop, Azure (cloud), portals like SharePoint and in the future mobile.

    You mentioned MLB.com as them running from Silverlight. Is this the same mlb.com that requires a plug-in to view HD streams and had numerous problems when the season started? How about Netflix, NBC Football and the Olympics showcasing HD smooth streaming in 720 and even 1080p? Let's be fair here.

    HTML 5 is coming out when? So, if you are an architect or a strategic decision maker you would stop all development and just wait until HTML 5 is adopted right? Or you would port all your code to open source video formats and SVG and hope that in 3 years all browsers support this? Don't forget the main interfacing language is still JavaScript which isn't exactly going to be delivering next-gen performance on multiple cores anytime soon.
  52. 8/24/2009 10:39 AM | # re: Silverlight misconceptions, bad reviews, bad comparisons
    How about data grid printing support in SL3 ?
    If I have 1000 row in one data grid which is shown small area with both vertical and horizontal scrollbar turned on, when printing, Can SL 3 print all 1000 rows in multiple letter pages as HTML supports it ?
  53. 8/24/2009 10:41 AM | # re: Silverlight misconceptions, bad reviews, bad comparisons
    wangqi64 - Silverlight currently does not have native printing support.
  54. 8/24/2009 12:19 PM | # re: Silverlight misconceptions, bad reviews, bad comparisons
    Steve Strong,

    You make a great point, but -- can I be a little geeky here? -- the appropriate analogy would be Quicksilver vs Flash. This is an actual comic fanboy controversy, and it was apparently resolved in a DC-Marvel Avengers cross-over comic.

    Of little help in resolving our quandary, it turns out that Flash is faster in the DC Universe, but Quicksilver is in the Marvel Universe where there is no Speed Force for Flash to tap into.

    Each superhero is better in the context proper to him.
  55. 8/24/2009 8:08 PM | # re: Silverlight misconceptions, bad reviews, bad comparisons
    I love Silverlight because I love C#. C# lovers => Silverlight lovers
    BTW, Silverlight will have a book dedicated to 3D game programming, based on Balder 3D engine, www.packtpub.com/.../book

    IMHO, Silverlight is better than Flash.
  56. Gravatar
    8/25/2009 6:28 AM | # re: Silverlight misconceptions, bad reviews, bad comparisons
    Bart Czernicki: recent rapid progress in such javascript engines as v8 ( http://code.google.com/p/v8/ ), SquirrelFish ( webkit.org/.../introducing-squirrelfish-extreme/ ), Tamarin ( http://en.wikipedia.org/wiki/Tamarin_(JavaScript_engine) ) and Carakan (http://my.opera.com/core/blog/2009/02/04/carakan ) suggests that javascript is going to be delivering performance close to .net, java or even c++ in the near future.
  57. 8/25/2009 7:09 AM | # re: Silverlight misconceptions, bad reviews, bad comparisons
    @FUD: Unfortunately it is not only about speed and whether something can be done in a particular technology.

    It is about tooling as well. How fast will you be able to deliver a product to market? If you have a .NET stack it simple will not make sense economically to plug a JavaScript UI on top of it.

    Microsoft has great tools (Visual Studio, Blend, SketchFlow, SQL Server to name a few), and while they might not be always original in the implementations they do, they do tend to make complex things simple for the average programmer.

    .NET gives you the ability to write complete solutions, front to end.

    Who is going to write the tooling for JavaScript? And can I use JavaScript on the backend?
  58. Gravatar
    8/25/2009 8:39 AM | # re: Silverlight misconceptions, bad reviews, bad comparisons
    @John Graham: agreed mostly with you - there is no sense in reinventing the wheel by creating .net stack in javascript, because this is constantly being done by web browser developers. Name it 'browser stack', 'html stack', 'javascript stack', 'dom stack', 'css stack', 'ajax stack' or whatever you like. What does .net stack bundled into recent silverlight provide, which is missing in the 'browser stack'?

    Javascript + html5 can become a real threat for flash and silverlight starting from 2010, when all the browsers except internet explorer - firefox, safari, chrome and opera - will have decent html5 support and fast javascript engines. Then the majority of flash and silverlight applications like youtube, small games, eye candy flash sites with scary usability, technological demos and tiresome ads can be easily implemented with html5 + javascript via <iframe>, <canvas>, <audio> and <video> elements. See the http://www.chromeexperiments.com/ as an example (Attention - use recent versions of safari or chrome for best results).

    This will have higher probability if internet explorer will continue loosing it's market share.

    At the moment flash with it's 98% penetration is a king of RIA, so there is no much economical sense in using silverlight with it's doubtful 34% penetration for new RIAs instead of flash. Html5 can be used with the same success instead of silverlight, because there are alpha- and beta- versions of web browsers, which already have ever-increasing html5 support.

    Youtube, one of the main driving engines behind flash, is already testing html5 - http://www.youtube.com/html5 , so the old flash (together with infant silverlight) will die in the next three years ;)
  59. Gravatar
    8/25/2009 9:07 AM | # re: Silverlight misconceptions, bad reviews, bad comparisons
    @John Graham: ah, I missed the last question from your message about javascript in backend. See http://code.google.com/p/v8cgi/ .
  60. Gravatar
    8/25/2009 10:56 AM | # re: Silverlight misconceptions, bad reviews, bad comparisons
    Aslo don't forget about forthcoming ActiveX killer - Native Client ( http://code.google.com/p/nativeclient/ ), which will kill all browser plugins including flash and silverlight with one shot ;)
  61. 8/25/2009 12:33 PM | # re: Silverlight misconceptions, bad reviews, bad comparisons
    @John Graham "If XAML is such a bad idea, why is Flex 4 / Flash now trying to scramble and implement the same thing using FXG."

    Umm, implementing something on top of your tech layer is always a good idea, if people don't like it they don't have to use it. Anyway, if you see emulating technologies of others as a sign of weakness, you must drink coke, use VisCalc, and prefer flash.

    I said, pretty clearly I thought, that it was a bad idea to use xaml as the *base* for a platform. It has too many ambiguous states. It isn't the binary format that is better, it is the unambiguous format. Xml by nature is very hard to make unambiguous, add to that a format that allows contradictory directives and you gets something impossible to be tool portable. I'm not really trying to debate it though, just a lot of people seem to be confused as to why it isn't doing too well -- it seems obvious that this is one of the reasons (and similar formats suffered the same fate for the same reasons).

    @Mike64Bits "C# lovers => Silverlight lovers" Actually I'm the biggest C# lover around, and love lots of the tech out of MS. Not a Silverlight lover by a long shot though.
  62. 8/25/2009 6:27 PM | # re: Silverlight misconceptions, bad reviews, bad comparisons
    @FUD

    Let's assume Microsoft will support HTML5 in next version of IE. I can imagine quite a lot of designers will change to making banners or simple media players, such as YouTube, in HTML5 in stead of Flash. That could cause big problem to Adobe. But I can't see there will be any big threats to Silverlight and Flex because they will still be very required to develop mission critical applications regarding the advantages on performance, tooling and true cross platforms.

    From my point of view, those developers who think HTML5 and Javascript could replace propriety plugins and tools are junior developers and they only have experience on web technologies. Get them into some serious development such as realtime trading systems will definitely change the way they think on HTML5 and Javascript.


  63. Gravatar
    8/26/2009 2:15 AM | # re: Silverlight misconceptions, bad reviews, bad comparisons
    @lixin: it will be interesting to see urls to real 'mission critical applications' written in flash or silverlight, which cannot be implemented in html5 + javascript with comparable efforts.

    Name at least one reason why 'realtime trading systems' cannot be implemented in html5. BTW, as I know, historically web-based clients for such a systems are implemented either as custom ActiveX components or as Java applets, but not in flash or silverlight. So, if owners of these systems will decide to move them into new world, it is likely they'll re-implement them in html5, but not in flash or silverlight. Investments in html5 are more profitable in the long term, because applications written in html5 - the next web foundation with clear future for at least 10 year - will have much longer lifetime than applications written in flash or silverlight with unclear future.

    Is it possible integrating html parts like controls and views inside flash or silverlight?
    Is it possible using flash or silverlight views as background for html parts?

    I'd recommend Microsoft interrupting further in-house development and support of silverlight and concentrate on html5 implementation in the next version of internet explorer instead. This could help re-gaining market share for IE in the next few years.
    Silverlight could be made open source, so, probably, active fans could continue driving progress on it.
  64. 8/26/2009 5:30 AM | # re: Silverlight misconceptions, bad reviews, bad comparisons
    Ah, Microsoft fanboys, do we remember when M$ commented that they didn't need to place tabs into IE6, because "they knew what their customers wanted"? Never settle for "good enough", simply with the argument that your competitors are doing no better. These sound like valid requests, so let's start building them.
  65. 8/26/2009 7:09 AM | # re: Silverlight misconceptions, bad reviews, bad comparisons
    @FUD: I think you need to lay off the Google HTML 5 marketing coolaid and instead start implementing your business critical solutions with the best proven technology that is available today.

    Even Google is using Gears still for parts of their Wave application so that goes to show how mature HTML 5 really is.
  66. 8/26/2009 7:32 AM | # re: Silverlight misconceptions, bad reviews, bad comparisons
    Fud - yes it is possible to integrate HTML parts inside Flash/Silverlight and will continue to get easier. Yes it is possible to use Flash/Silverlight as background for HTML. Last time I checked, HTML5 didn't show much enhancements for data communication.
  67. 8/27/2009 10:28 PM | # re: Silverlight misconceptions, bad reviews, bad comparisons
    I have to say I'm a pretty big fan of C#/.Net and pretty agnostic to Silverlight. I did quite a bit of Flash developmentt from 2003-2004 and really left such a bad impression that I really try to avoid it. I tend to like what modern dhtml/ajax frameworks have brought to the web world, and thinkk that WHATWG/HTML5's extensions can do for the web.

    Lets be honest here though, no web framework will match the ease and control that a plugin system like Flash or Silverlight give you. Let alone the level of tooling support and cross-browser compatibility.

    IMNSHO Flash and Silverlight are probably more alike in abilities than different. Flash the design tool is nicer imo for animators, but horrible for developers, flashdevelop/flex and others fill this void. Silverlight is much better in terms of programability than flash is, but blend fills in this gap. I'd say they're about on par wrt media capabilities though.

    One thing that kind of irks me is that Moonlight is now more than a version behind in compatibility, and the MS provided codecs don't support the DRM channels, ie no netflix on linux. This is a relatively small issue to me, but still an issue. I think the streaming/programability model in silverlight is particularly compelling... it makes it far more suitable for emulation of different platforms for simulation, training, and even games.

    Tim's a pretty straight forward guy, and by nature of his work knows silverlight very well, I know a little about both, though do far more dhtml these days... my tools of choice are ExtJs or jQuery+UI with an ASP.Net MVC backend, to each their own.
  68. 9/9/2009 4:15 PM | # re: Silverlight misconceptions, bad reviews, bad comparisons
    Tim, Nice article. God this took me back to the playground days with regard to my catapult is bigger than yours, ner ner nen ner ner. Why can't people just embrace their OWN CHOSEN technologies and get on with it, what a waste of energy and coding time! Who cares which is better than which, make your decisions on what you know can get the job done for the customer in the boundaries of the customers requirements.
  69. 12/14/2009 9:49 PM | # re: Silverlight misconceptions, bad reviews, bad comparisons
    This argument is much like that of PC or Mac. In the end it all comes down to personal preference. Microsoft does make strong products for development, design, and anything in between. I chalk this type of back and forth to those who are blinded by brand loyalty to see that the other side has value as well.

 
Please add 5 and 4 and type the answer here:
First time here? You are looking at the most recent posts. You may also want to check out older archives. Please leave a comment, ask a question and consider subscribing to the latest posts via RSS or email. Thank you for visiting! (hide this)