Is Silverlight the end of Flash?

I got a couple of emails about my post yesterday from angry web devs who wanted to complain about my Microsoft Fanboi attitude toward Silverlight. I won’t post the emails themselves here (let’s put it this way: had they been comments I would have deleted them) but I’ll reiterate their overall message:

Microsoft is already dominating the PC world and with Silverlight they are trying to take over and dominate the web world as well. Since Microsoft by default is an evil monopolistic corporation, noone should support their new scheme to monopolize the internet.

I realize this is a common sentiment among a lot of programmers, especially those that use Open Source software heavily, and it should come as no surprise that Mac users also share these attitudes (ironically because to describe Apple as a company you need a whole new definition of the word “monopoly”). I also understand the sentiment to some degree but at the same time I think it has more to do with the built in hatred we as humans have for those who do better than ourselves. For the most part, the ever-so-popular pass time of Microsoft bashing is wholly undeserved and misguided. But I digress.

In light of these emails I did some quick searches on the web for articles on Silverlight vs. Flash (because even though the two apps are two entirely different animals, they are still direct competitors). What I found was not too surprisingly a whole whack of misinformation, assumptions and good old fashioned propaganda.

There seem to be two fronts: Those that have tried and tested Silverlight and love it on one side and those who think Silverlight is a Flash rip-off and therefore are not interested in testing the application on the other. What I found most striking is that there are very few Silverlight-deniers who have actually tested the program – they just hate it by default and predict it’s demise purely because it is a Microsoft creating (and thus should be full of bloatware, holes, bugs and other garbage). I think that says a lot. If my theory is correct, most developers and designers who get their hands on this incredibly powerful application will be blown away by how much better it is than Flash. And I highly doubt anyone in their right mind would predict it’s demise once they realize what it can do. One noted exception is Lee Brimelow whose expertise in Flash ActionScript and authoring is unparalleled. He is thoroughly unimpressed by what Silverlight has to offer and considering his background and skill level it would be stupid of me to question his attitude. It is worth noting that he is an Adobe Evangelist so his views will be slightly biassed to the rival, but nevertheless I think it important to include his objections. Brimelow’s main stance is that Silverlight has little to offer that Flash hasn’t already done. And that might very well be true. But what Silverlight has that Flash is lacking is an accessible code language. While Lee and his kin will have no problem churning out hundreds of pages of ActionScript that can make Flash do pretty much whatever they want, most devs and almost all designers don’t have the chops (nor the time) to do this. Silverlight on the other hand has a more approachable code language and though this alone it becomes a more usable application. And when it comes to video handling, I think he will agree with me that what Silverlight offers is lightyears ahead of the Flash status quo (though his custom video player, which I painstakingly emulated some time ago, is amazing).

One interesting feature in Silverlight that is getting very limited attention is the ability of the apps to interact with common navigation tools in browsers. Anyone who has surfed through a Flash based website will know that hitting the “back” button on the browser by mistake is a big mistake. At MIX one of the Silverlight guys showed me a simple code set that let the application interact with the navigation buttons so that they functioned within the application itself rather than on the browser window as a whole. This is a huge feature that will make life a lot easier for devs and designers and I think once people start messing around with it they’ll realize it is something they have missed in the past. I know I will.

But like I said before, it’s in the video handling Silverlight 2 truely shines. And I can see a future where the grimy, buggy, crunched and artifact-riddled video provided by Flash will be a thing of the past. The fact that Adobe is working on new codecs and YouTube is playing around with a HD feature might very well be a testament to what a threat Silverlight is becoming. Because regardless of the success of Flash as a video platform, any serious video content producer will agree that compressing video for Flash is like running it through a shredder. Sure you can make it look good, but only by following very strict guide lines. The VC2 codec in Silverlight 2 is the difference between old VHS rental tapes and Blu-Ray. And for people like me who want high quality streaming video on the web that’s music to the ears. Ad to that intelligent streaming and scaling, full meta-tag integration and endless expandability and it really starts looking like something.