Silverlight Redux: Listening to Feedback…

Although it was great to see that my post on Silverlight got picked up in a few places (in particular, Digg and TechMeme), it certainly generated a lot of feedback in the comments section! I hope that after reading the comments, you’ll at least give us a tiny amount of credit for being open and transparent – I haven’t censored the posts that I didn’t like the look of 🙂

It’s interesting to read all your feedback, and I can promise you that it is taken seriously. At our next leadership team meeting, I’m sure we’ll be poring over all the commentary and trying to incorporate a good deal of it. To address a few points:

  • We built Silverlight to be a cross-platform solution: after all, we have WPF already for the richest Windows platform experience, so it wouldn’t make sense for us to build an inferior Macintosh experience. From the very first release in December of a CTP of this technology, we sim-shipped a Mac version, and both releases have had complete feature parity. Any difference between the two is a bug, not a devious attempt to lock out potential customers!
  • To suggest (as one commenter did) that unless we release Silverlight as open source, we can’t claim that it’s cross-platform is hard to take seriously. I guess Oracle, Acrobat Reader and Flash aren’t cross-platform either. I was hoping we might get at least some recognition for the fact that we shipped a solution that works just as well with Firefox and Safari and Mac OS X as with IE and Windows.
  • Just because we haven’t announced something now doesn’t mean that we’re ideologically opposed to doing it. Our engineering team are working hard on building a runtime with broad platform support and a great feature set, but we can’t do everything at once. Our current list of supported operating system versions and browsers is a good start, but we’ll evolve it over time.

Enough said. I’m not writing this to be defensive: everyone is entitled to their opinion and I’m committed to provided an open channel for feedback, positive or negative. But I also wanted to show that I do read every comment and am interested in the discussion. Our success or failure with Silverlight is contingent on whether we satisfy developers like yourselves – time will tell how we do, but I hope that you’ll at least give us a chance to earn your trust.

Comments (23)

  1. Anonymous says:

    Hey Tim,

    You’ve probably had your fill of feedback, but what the hell here’s some more. Given the software development that I’m involved in here’s a list of my priorities as far as Silverlight functionality is concerned in priority order:

    1) CLR support (at least at the compact framework level of functionality).

    2) Decent System.Net.Sockets support with security controls, but fully functional otherwise

    3) Linux support. I don’t want to have choose a non-dot-net solution if Linux deployment is required.

    4) A standard data-binding mechanism within the Silverlight APIs

    5) Windows Mobile support.

    6) The ability to embed the Silverlight plugin into native applications across the platforms supported.

    Silverlight is a very exciting technology that has the potential to change the software/web landscape, but man will I be disappointed if there is no binary sockets support in the first version and Linux support within a year. Its potential is probably why you are getting a barrage of positive/negative feedback.


  2. Anonymous says:


    Please make a mac version of Expression Blend to support Silverlight. Most all serious designers use Mac’s and I think to exclude them is risky.

  3. zproxy says:


    Nice job with silverlight.

    I have a project that can translate c#/msil into javascript at

    The question what do you think of the idea, and what dou you think the future would be like for my jsc project?

    As silverlight is now solid enough i think i should start using it my examples.

    cheers 🙂


  4. Anonymous says:

    It’s great to see MS re-entering the rich web graphics arena after allowing Flash to monopolise the market for the last 9 years. Does anyone else remember Microsoft’s Java-based "Liquid Motion"?

    (See and ).

    I believe MS originally acquired Liquid Motion from a company named DimensionX (see ), but sadly it became a victim of the "Don’t Mention the ‘J’ Word" sentiment that has ruled at MS since the late 1990s – this is Microsoft’s loss, since Flash has gone from strength to strength since then.

    Silverlight looks very promising to me as a developer, mainly because I can write code in C#/XAML and have it compiled and run at full speed on the client machine, rather than having to use an awkward scripting language with poor development tools.

    I hope you guys have also added some kind of document viewing support – something like "Metro", perhaps? (See ) – it would be great to finally move away from the bloated, clunky PDF format and the truly awful Acrobat UI.

    Finally, let me add my voice to the chorus calling for Linux support to be added as soon as possible. This is a good start, but I’m sure you know you have a long way to go yet…

  5. Anonymous says:

    Oh, and "Metro" == "XPS", for the uninitiated…

  6. Anonymous says:

    Guys —

    I could see how you could get easily discouraged with the negative comments and feedback you’re getting. Don’t Be! We are extremely excited to have Silverlight; we have products that we wrote for the web that we’re going to use WPF to rewrite in desktop mode. And we’ll now be able to use that presentation framework goodness in on the web! Great things all around.

    – jesse

  7. Anonymous says:

    Well, if you want some feedback, it could use some Opera support.  Opera needs more love in general, really :

  8. Anonymous says:

    I’ve been playing with Silverlight, and it looks really promising. I’m especially excited about the Javascript communication support.

    However, the fact that event handlers have to be functions in the global namespace is kind of lame. Any chance the inline XAML syntax can at least support functions that are object properties (e.g. Loaded="javascript:Foo.barFunction") and that Javascript addEventListener() method can take function references instead of just strings?

    A lot of the advanced JS out there (including stuff using Prototype and Dojo) binds arguments to callbacks with closures, so it would be really nice to support anonymous functions.

    Also, where’s the right place to report/discuss bugs?

  9. Anonymous says:

    No source code = no use for me and every other Web 2.0 developer.

    Nice try though, good to see MS can still keep the dream alive 90s style. That video is absolutely hilarious – it’s like a parody of itself. What did you tell the marketers? "Hey guys .. make us a video depicting what using a Windows PC is absolutely NOT, and NEVER WILL BE, like! Extra points for token diversity, kids and cool stuff like skateboards! Skateboards are still cool, right? Right?"

    God that is lame – a really expensive form of lame, which just makes it all the funnier.

    Anyway keep it up guys. PS some of my friends are already calling your format "Silverchair" – lol!

  10. Anonymous says:

    Hey, Silverlight really rocks. I wonder if it supports layers?!

    For example I have 3 images I want to send the last one to be on top of the other, or the one on top to be behind the others etc..

    Do you have any idea how to do that?!

  11. Anonymous says:

    What about Windows 9x support?

  12. Anonymous says:

    Tim Sneath is awesome, if you don't read his blog , you should. You really, really should. He's

  13. Anonymous says:

    The guy at NAB said the download is only 1MB and you can stream HD Video with it. Please bring up how silly this statement is and include atleast the compact dotnet framework so we can run compiled code in this thing. If your streaming HD you probably don’t care about downloading 4-5-6MB or more once.

    Also please make silverlight a true lightweight version of wpf so that we can use a subset of wpf xaml code and components in siverlight, making it much easier to create a light weight cross browser client with limited functionality.

    Thanks for pointing out that you are closely watching the feedback…

  14. Anonymous says:

    i’d like to echo dnl2ba’s anonymous function request, above.

    also, there should be some kind of extensability API for UIElement. for example, if I define a globally scoped function like this:

    function MyLayoutControl (super)


     this.KeyDown = function (sender, keyEventArgs)


       // handle KeyDown event


     this.ChildAdded = function (child, index)


       // …


     this.GetValue = function (propertyName)


       // override, or pass to parent

       return super.GetValue (propertyName);


     this.SetValue = function (propertyName, value)


       super.SetValue (propertyName, value);



    then including this definition in the XAML:





      <… />


    would cause the control to call "new MyLayoutControl (UIElement);" to create a wrapper object, adding non-overridden functions/properties to its prototype, hooking up events, etc…

  15. Anonymous says:

    Please, please, please … tell me you aren’t going to allow native code to run.  Are you just renaming ActiveX here with a vector API?

    Can you give me a percentage chance of exploits of this thing?

    Why is speed/efficiency always touted over security at Microsoft?  The compys today are plenty fast, they even make Flash run good…  Could you at least add a "Silverlight is Secure, and here’s why" link that at least explores how, this time around, you got security for annoying banner ads on the web right?

    You don’t get a pass from me when you get exploited.  Although I’m not rooting for any crumbling of your foundation either.  Just get it right.  I’m so tired of the gaffs and the excuses from a company that has the resources to always get it right.

  16. Tim Sneath says:

    Hi You, Me and the Dog,

    Thanks for the comment.

    We’re not "going to allow native code to run". Silverlight supports two coding models: JavaScript (no new exploits introduced there – your browser has had it for a decade), and .NET (dynamic or static languages, running in a sandbox – again, we’re in our seventh year of sandbox security models for .NET and it’s proved remarkably resilient so far).

    It’s impossible to write code that can be guaranteed in advance to be exploit-free – no company "has the resources to always get it right", as you put it. You shouldn’t give anyone a free pass in this area, Flash included. But I want to be clear that we’re not touting speed over security with Silverlight – it’s very much the other way around: parameter checking and the like costs performance, but it’s well worth it to produce a secure platform.

    Hope this helps,


  17. Anonymous says:


    1. What are you doing about accessibility? Will this work seamlessly with MSAA so that popular screen readers can pick up content?

    2. When are u supporting Opera? I don’t care about Linux, but half the people I know use Opera as atleast a second browser. Its my primary browser.

  18. Anonymous says:

    I’m very interested in mixing XAML/HTML-what you can suggest in this scope?You talked about some kind of windowless frames to bring HTML elements to XAML,what does it means,iframes?Bad,very bad…VML  has true mix with html ability <rectangle><input/></rectangle>,and Adobe’s SVG plugin provide this TRUE kind of mix for ages(to be honest,their native behavior dosen’t play that nice with html as VML implementation,but anyway integrated more close than Silverlight do,<div><svg/></div>-was completly valid).

    One step forward,two steps back?I understand browser compatibility and the like,but why not to provide more consistent experince for IE users?

    I thought Silverlight can provide element/attached seamless behavior experince to developer,but it seems much more difficult…and Silverlight looks like just another vector graphic ActiveX implementation only with CLR support for scripting.But essentially,you’re throwing away all BOM/DOM codebase and replace it by XAML/CLR,if I can’t use standard html elements in place of Sileverlight controls.You keep to programming models separate,no matter what you say about two-way scripting,object/dom models mixing-what’s really could make programming experience transparent.


  19. Anonymous says:

    Its kind of funny that the security worries have arose in this blog. But I’m here to tell you that I am not a developer, and as it stands Silverlight is more secure than Flash at this moment. I’m actually a media pirate. As it stands right now, point out any Flash file, and I can rip it, customize it, read the action code natively, recode the Actionscript, then re-ecode the SWF and re-upload it as my own. I can also do this from a commercially sold product that has floating around the Net for the past 2 years. Show me any video be streamed through Flash, I can detect it, rip it, re-encode, and save it as any media on my HD. It doesn’t matter if it is streamed through HTTP or RMTP as I can rip both. This also available commercially on the Net. Seperate program that what I originally stated too. Now I know alot of people here dont like piracy, but I believe the person who touted security in Flash as being a positive, is seeing through Micro$oft Goggles: Sees something branded as M$ and proceeds to bash it. Sometimes I call it Apple-itis. In any case, As it stands right now, I could not, for the life of me find any source in Silverlight calling wmv’s or scripts that I could "rip apart", making it impossible for me to copy or duplicate it. If you can do it, show me. Otherwise….address security concerns where they should be. Because Flash Security is kind of a joke- BTW I think Silverlight has alot of EUE potential

    Good Job

    Anduin, A Pirate

  20. Anonymous says:

    Having been a Flash developer since the beginning, I am a little confused as to exactly why I would want to switch to using SilverLight.  It seems like Flash in a MS wrapper.  It’s one advantage would seem to be the tie-in to AJAX, but you can get that through Flex 2.  

    Incidentally, the Flash Player format IS open-source, which is why there have been third-party developers who have brought out applications that create Flash Player content.  

    I am not writing this to be negative, I’m just looking for a compelling reason to spend my time learning another development tool.

  21. Anonymous says:

    I second the call for a Mac version of the creation tools… Otherwise, a non-starter for me.

  22. Anonymous says:

    I love the idea of Silverlight and feel its about time this is being done! For everything I have plenty of positives however to call it cross platform with no linux/unix support is just not true. By definition that means it should run on current platforms and it just does not. A nice start to be sure but I can not devote my time and effort here until I reach the major platforms. (And trust me I would jump at the chance as I use asp/vb 2005/vba elsewhere!!!)

  23. Anonymous says:

    I second the comment about accessibility concerns, it’s an issue with flash sites most of the times and gov’s are requiring accessible public sites now