January 28, 2010 21

Why HTML 5 Won’t Kill Flash or Silverlight

By SmartyP in News

There is a recurring theme that keeps popping up on tech blogs regarding HTML 5 – the idea that it is going to kill off Flash and Silverlight. These comments are frequently in response to folks complaining about the lack of Flash support on a given device, usually mobile devices or devices that aren’t running your typical OS that supports the use of plugins.

The arguement that HTML 5 is going to kill off RIA apps is based on the perception that all Flash and Silverlight are used for is to display video and do simple animations. To those in the field we know that this is a dramatic over-simplification, but at first glance it actually makes sense. When you think about the average user’s usage of Flash or Silverlight it is almost always in the context of Youtube or Vimeo or Netflix – sites which all use Flash or Silverlight to power their streaming video. With HTML 5, websites will be able to support common video formats like H.264 through HTML alone. In fact, several video sites are already releasing HTML 5 based alternate sites for those who want to watch videos without using Flash, the most prominent example being YouTube’s recent announcement.

The reason why HTML 5 won’t kill off Flash or Silverlight is pretty simple – it doesn’t have the ability to change as quickly as these plugins can. According to Wikipedia, HTML 4 was standardized in 1997 – thirteen years ago. In Internet time 13 years is roughly the equivalent of the time between bicycles and cars being invented – a world of difference. HTML 5 may compete with Flash and Silverlight in the short term for video playback and animations, but as soon as the next major web innovation comes along HTML 5 will be outdated again, and once again plugins will be necessary to facilitate cutting edge experiences on the web.

So while some are trying to argue that HTML 5 is going to kill Flash and Silverlight, I’m going to make a different argument – that HTML 5 is already outdated. HTML 5 has no inherent support for touch based interfaces, something which is very quickly revolutionizing what users expect when it comes to interacting with computers. Silverlight already supports multitouch, and Flash 10.1 has support for it as well, but HTML 5 does not. Likewise, while HTML 5 may cut into Flash and Silverlight’s usage for video, it will be shortlived. The video engine which Netflix uses to stream to millions every month is not a simple video embed, it is a technology that real-time swaps a user between various encoding qualities based on their realtime bandwidth – something which HTML 5 can’t intrinsically do. Furthermore, the #1 place where Flash is used is for embedded advertising on tons of sites – advertisements that most people don’t even realize are in Flash. When it comes to a content provider letting 3rd parties run ads on their site, they aren’t going to allow HTML 5 powered animations and interactions to be embedded onto their site – they are going to stick with static images or embeddable objects, not run the risk of embedding foreign HTML into their site layout.

Don’t get me wrong, I am all for HTML 5 – it will assuredly be a great platform to bring a lot of revolution to sites on the web. But with that said, implementations of HTML 5 are no closer to being standardized than they have been for HTML 4 all these years, and just because there is a standard doesn’t mean a device creator is going to implement the entire functionality set. Flash and Silverlight are great ways to avoid the hassle of dealing with browser compatibility issues, to use more evolved coding languages, and to push the envelope with emerging technologies and interactivity – Flash and Silverlight aren’t going anywhere.

-Roger Peters (aka SmartyP)

  • Share/Bookmark

21 Responses to “Why HTML 5 Won’t Kill Flash or Silverlight”

  1. Mason Brown says:

    great read. I couldn’t agree more.

  2. Rene Schulte says:

    Good article. And don’t forget that HTML 5 video is not the same in all browsers due to licensing issues with the H.264 codec.

  3. Detrus says:

    It’s an interesting situation where developers have to wait on some big organizations to slowly release little features.

    In that kind of climate, Flash and Silverlight can hop along ahead of HTML indefinitely. Will they ever include every possible feature? It’s a very interesting business model and it slows down the web.

    And you’re making the assumption that this climate will last indefinitely.

    I think there are better approaches out there. We should have nothing less than the power of desktop apps combined with the security of the web.

    And that power can be given by Google’s NativeClient.

    It could one day run huge desktop applications like photoshop from inside the browser. It will run it at 90+% of the speed of the normal photoshop you download and install. As long as your legacy code is not dependent on some OS SDKs, you can make it run in the browser with minor modifications. (then some major ones to make it incrementally downloadable)

    And it will be combined with browser API’s that today can only be accessed in one language.

    So, as you can see there are some serious new ideas that could change the endless cycle of waiting for features to be implemented and distributed by big organizations.

  4. > The arguement that HTML 5 is going to kill off RIA apps is based on the perception that all Flash and Silverlight are used for is to display video and do simple animations.

    Canvas is also a part of HTML5. I think that’s part of the argument.

    > The reason why HTML 5 won’t kill off Flash or Silverlight is pretty simple – it doesn’t have the ability to change as quickly as these plugins can.

    Very true, but in what ways has Flash changed recently that significantly improve software written in Flash? By significant, I mean in a way that the people who use the software will notice.

    > HTML 5 has no inherent support for touch based interfaces, something which is very quickly revolutionizing what users expect when it comes to interacting with computers. Silverlight already supports multitouch, and Flash 10.1 has support for it as well, but HTML 5 does not.

    Wow, Flash 10.1 will be great on the iPhone. Oh. Wait.

    Sorry for the snark: you’re totally right here, but in HTML, multi-touch is relevant at the JavaScript level, because that’s where custom user interaction is handled. Apple added multi-touch event handlers to JavaScript in iPhone Safari (http://developer.apple.com/safari/library/documentation/AppleApplications/Reference/SafariWebContent/HandlingEvents/HandlingEvents.html#//apple_ref/doc/uid/TP40006511-SW1).

  5. Uhhh … just a quick question. How is NativeClient any different than Flash or Silverlight? It’s still a runtime that I have to download and install … let’s face it: it’s a plugin, and the install base isn’t much different than Silverlight. So it’s basically another sandbox in the browser I can write code for.

    It’s not going to magically become the defacto plugin, any more than Windows or OSX has become the defacto operating system. (No, Chrome OS isn’t going to make those go away, either.)

    People like choices and for all of the moaning about open compatibility, it still boils down to running applications on different environments with different runtimes.

    Heck, people take for granted that JavaScript is a standard and that videos play in the browser. Many don’t recall the nightmare it used to be to click on a video and not have the proper codec or player (remember “RealPlayer” etc?) … or even pause to realize the fact it is more ubiquitous now is simply because so many people installed a (gasp!) plugin called Flash.

    JavaScript was built to enhance the user interface and responsiveness of the browser experience. NetScape did a great job of capitalizing on their near-monopoly of the browser market to ensure it became so widespread that it was forced to be adopted as a standard and integrated in all browsers.

    The web has grown up, more people know about it, and we have competing browsers and operating systems now so its harder for a single plugin or solution to gain dominance or widespread acceptance. Too many people assume, “x is great” just because it was put out by Google. I also get tired of the “I refuse to install Silverlight because it’s not a standard” mantra chanted by all of the people who already installed Flash which they forget is NOT a standard, it’s a plugin. A high adoption rate doesn’t make it standard, it just makes it common.

    You are talking about NativeClient being able to “one day run huge desktop applications like photoshop” but in the same breath mention, “as long as your legacy code is not dependent on some OS SDKs” … uh, really? Photoshop is completely OS-independent? I don’t think so.

    I agree with you … “there are some serious new ideas that could change the endless cycle of waiting for features…” yes! Amen, because Silverlight is absolutely one of those serious new ideas!

  6. This blog post makes a really cogent argument as to why HTML5 will not be a client side panacea and it is important to remember that the technologies are not mutually exclusive.

    Flash, and presumably Silverlight, have the ability to communicate with their peers in the host environment. That means that something that is better implemented in HTML5 can be implemented in HTML5 and something better left for the plugins can run in them.

    I’m looking forward to continued development by both the companies that produce the hosts (browsers and other applications) as well as the plugins (Flash, Silverlight, etc) so that I can continue to solve my business needs and increasingly more elegant and creative ways.

  7. Brian Gorby says:

    Flash isn’t going anywhere soon just like IE6 isn’t going anywhere soon. Even if there are better options to present web content, the easiest and cheapest to implement will always be executed by the majority. This isn’t exactly a good thing.

    Flash/Silverlight have their usefulness, especially in non-traditional/non-browser-based mediums. But more and more Flash/Flex applications one comes across on the web could have been more elegantly executed using DHTML.

  8. Tony Quin says:

    Great insight and a rational, well articulated pause for the latest bandwagon

  9. Detrus says:

    Silverlight and JavaFX are the exact same idea as Flash and even HTML5. Every new feature has to be centrally distributed. A web developer cannot implement his own canvas, he has to wait for browser makers to do it.

    The same is true for Siverlight and Flash. Except there, every new feature pack can be monetized. Microphone support, iPhone compiler, GPU video, etc.. can all be monetized by selling updated authoring tools with them. Why satisfy every whim at once when it can be milked for money this way?

    NativeClient will have to be demonstrated in the real world, just like javascript and HTML had to be, so at first it will be a plugin. But it is already open source and will be included by Google in Chrome and Chrome OS. If it is good enough with security it will have a very good chance of being adopted as a standard.

    But if it does get adopted as a standard that will be the tipping point of the web. No longer will improvements to browser HTML parsing, video playback, polygon count in WebGL, improved image formats be limited by browser makers. New functionality will be downloadable and cacheable as small pieces of code, without nagging the user to approve and install plugins.

    We would never have to watch for software adoption rates to catch up to display a new video format or render fonts smoothly and consistently.

    Apart from a few browser features that have to be distributed from a trusted source for security, browser makes may and should become irrelevant.

    And that is the advantage of compiled applications vs VM runtime dependent ones. Slow centralized distribution vs instant distribution.

    And photoshop has very few OS dependancies. TextMate on OSX has many and that will be another problem to be solved, getting OS SDKs to disconnect from the OS and be available everywhere, but it’s a much smaller problem.

    Amazingly Microsoft had its own research demonstration of the same idea, Microsoft Xax. Microsoft was also one of the first to suggest the concept of desktop applications in the browser with ActiveX, so there are some interested parties in such a technology.

    Their investment in Silvelight seems like a bad sign for this idea, but who knows, maybe Flash and Silverlight APIs could be converted to run through NativeClient and give developers alternatives to something like gecko canvas. But that’s all they really are, alternative languages and frameworks. Yet they’re trying to be alternative operating systems.

  10. Detrus says:

    Perhaps it would help to read the full research papers on these sandbox technologies.

    NativeClient http://74.125.93.132/search?q=cache:8JfWJOzKcyQJ:nativeclient.googlecode.com/svn/trunk/src/native_client/documentation/nacl_paper.pdf

    Microsoft Xax http://74.125.93.132/search?q=cache:YNFndVXSnrQJ:research.microsoft.com/pubs/72878/xax-osdi08.pdf

    As far as alternative operating systems, HTML5 is also an alternative OS. And everything that can be compared to an OS, a centrally distributed software dependancy you have no control over, it’s not healthy. That’s why different OSs were bad for progress in the 90’s and why so many things moved to the web.

  11. bud says:

    Does anyone ever mention that Flash interfaces are a single touch paradigm in a multitouch world?

    Flash would not be creating all the hate and headaches had they simply never tried to become a wrapper for Video content in the first place.

  12. Joeflash says:

    I have a much simpler reason why HTML5 will never replace Flash. And in the case of Silverlight, you can’t replace something that has no presence in the first place.

    http://ishtml5readyyet.com/

  13. Julio Garcia says:

    Being a professional web developer that actually makes his living developing web applications there is for me another very important argument against the demise of Flash and Silverlight. While developing Flash or Silverlight applications I have the advantage of targeting a single runtime environment and of using professional and mature design and developing tools. When thinking about being able to develop a certain app in HTML5 you must consider not only the theoretical possibilities but also the economic realities. Because the lack of professional design and developing tools, and the need to test the project against n different interpretations of HTML 5 on all the different browsers, using HTML 5 to develop a project is going to be much more expensive than the alternatives. And if you think that the tools will get there, well maybe, but if Goolge Web Toolkit is some indication I am not counting on it.

  14. Boutté says:

    Great article Roger.

    As someone who remembers developing during the first go round with browser wars, long before Firefox was a gleam in somebody’s eye, I think it’s pretty much going to be a bit before HTML 5 is a viable option for web based products that need to reach any sort of large audience. If the big 3 browsers don’t do HTML 5 in the same way, right way, it’s not going to matter how robust it is.

    Then of course there is the adage – the right implementation for the right output. o choose wisely. Sites have started toying with it, hoping for some fast adoption – but from everything I’ve seen, HTML 5 still doesn’t hold a candle to the aesthetic side that is made possible by Flash or Silverlight.

  15. Fallon Massey says:

    HTML 5 will take the lions share of small development, and Flash/Flex and Silverlight will DOMINATE the high end development.

    The reason HTML won’t win in the long run, is the development environment. It’s crap, and can’t compete with IOC Containers, refactoring, and a whole host of tools used by developers to build and test complex applications.

    I’m glad to say that the days of tinkering sites together with lame tools, and even lamer languages is coming to an end.

    The bottom line is that each platform has it’s advantages, and those looking for the all or nothing approach, probably haven’t lived long enough to mature.

  16. Jay Fuller says:

    ” The video engine which Netflix uses to stream to millions every month is not a simple video embed, it is a technology that real-time swaps a user between various encoding qualities based on their realtime bandwidth – something which HTML 5 can’t intrinsically do.” -SmartP

    Here’s an implementation of streaming video and audio that operates over HTTP that scales bit rates according to network conditions like Netflix. Apple has proposed it as new standard to the Internet Engineering Task Force. It essential takes a video stream breaks it into small segments and sends along a playlist of those segments.

    If network conditions change the playlist has a list of the next segments of either lower or higher quality video to play according to network bandwidth. Such as if your child is in the backseat with a smartphone watching a video and the signal is jumping from cell tower to cell tower with varying reception profiles.

    You can read Ars Technica reporting about it at:

    http://bit.ly/14KTbZ

    Or if you have a Mac with Snow Leopard 10.6 and QuicktimeX, or an iPhone/iPod Touch, or iPad :-o . You can give it a try at:

    http://devimages.apple.com/iphone/samples/bipbopall.html

    This video clip starts at the lowest video rate and steps up through the highest video rate your connection can support.

    Imagination guys, just because it isn’t being done, doesn’t mean it can’t be solved. That’s the purpose of those billions of interconnected neurons in your noggin.

    Sorry sorta SmartyP.

  17. SmartyP says:

    Thanks for the comment Jay. I am also aware that javascript can support multitouch if you try hard enough – that doesn’t change my underlying point that HTML standards cannot keep up with technology advances – or at least have done a poor job in the past.

    I am sure HTML5 will replace some things which Flash has been primarily used for (especially video), but like I said – that isn’t all Flash/Silverlight are used for. There will of course be shops which focus on HTML5 in all instances, but there will also be shops which pick the right tool for what is being built, and IMO there are certainly cases where developing in Flash or Silverlight (or more particularly – with development languages like AS3 and C#) will still be the best route – particularly for web applications which are of the enterprise scale in complexity.

    Here is a collection of more articles on the subject in case you are interested:
    http://inflagrantedelicto.memoryspiral.com/2010/01/html-5-and-the-flash-platform-a-call-for-sanity/

    Best wishes.

  18. Jay Fuller says:

    Thanks for your reply Roger, and after perusing some of the articles listed on the link you provided, I agree that the technology “leap frogging” is very important to the advancement of the internet state of the art.

    I distinctly remember the first time I saw a copy of Mosaic running on a Mac in our faculty academic computing support lab in the Spring of 1993. I remember because when I said KEWL . . . a speck of bitspit came flying out of my mouth and hit the screen and the friend showing me the browser was totally grossed out. The “What’s New” list was still in the hundreds of listings back then.

    From there I remember downloading and installing all the plug-ins to make different things work with the browser. And configuring Helper applications that would fire up when something the browser couldn’t handle was hyperlinked in a webpage, like JPEG’s!

    But just this past week a friend’s granddaughter is a cheerleader and her high school basketball team was playing a game on the other end of the state. So she sent her grandmother a link to the website that was streaming video of the game. I got the call because she got the “Safari can’t find the internet plug-in,” dialog when she clicked on the link.

    I figured out that it was a SilverLight plug-in that was needed. So I directed her to the Microsoft website, somehow, while installing the plug-in she got on a page in a foreign language. HOW? I don’t know, such is the plug-in blues. I ended up having her install a VNC client, so I could log-in, see her screen, install the plug-in and make sure she got the video of her granddaughter cheering playing on the webpage. BTW, I had to upgrade my SilverLight plug-in before I could see if the site would run on a Mac.

    I guess all this HTML5 – Flash Killer talk has peaked since the “blue Lego” showed up in the iPad demo recently. Most of the articles from the sources above seem to presume that internet experience will continue on the browser with a desktop OS.

    I think the “blue Lego” was on the NYTimes page and was their media browser of current videos, which could be implemented via HTML5 in the future. The form factor of the iPad will be a success and the internet experience will move to mobile devices of various sizes.

    Now you can make a case for Flash, SilverLight and other RIA IDE’s, which promise the write once, play everywhere developer utopia that seems ever elusive, but I think that the splintering of the internet experience among numerous devices might lessen the hold of the RIA via plug-in architecture. As the proliferation of devices small, medium and large strain the technical departments of the IDE developers. Kill Flash or SilverLight, no, maybe just maim them though.

    And the iPad just might just be inflicting some of the flesh wounds, through this concept called the “tyranny of choice.” Say you walk into a big box electronics store and you want to buy a digital camera. How many cameras are there, 50-70? Say you pick a price range $150, how many then, 12-15? You have to walk out of the store with just one. Have you done your homework beforehand, built a feature matrix, read reviews?

    Still when you walk out that door, there will be a nagging suspicion that you didn’t get the exactly right digital camera for yourself, because of the plethora of models with their diverse feature sets. This tyranny of choice can actually be a source on anxiety in the modern consumer, oh I don’t wanna even think about it.

    Now, take that up a notch, say a $500 tablet computer, with even more diverse options and feature sets. iPad!?! I saw that on the evening news, you might know someone that has one, kids might use them at school, they use them to do inventory at the warehouse, cops got `em their squad cars, and library lends them out for use on the premises. I think I’ll get me one, saves on research.

    Wow a “blue Lego” this site is broken! Why can’t I see this stuff? Now you can argue about who will get the blame, the device maker or the site maker, the user just knows they can’t see the stuff. I wouldn’t argue too much before viewing Google’s “What’s a Browser?” video on YouTube.

    Apple has sold 250 million iPods, now I’m not saying they’ll sell that many iPads, but this will be the way that many people will get their internet experience in the future. And companies will adjust their sites to capture these internet users. Remember when FireFox came out and banking, tax preparation and stock trading sites wouldn’t work. And now almost all have moved to standards compliant web design. Now think of the iPad like that. This will be important.

    Now you say that video, banner ads, menus, etc., “isn’t all that Flash/SilverLight is used for.” I’m worried too about some of the rich interactive graphics that NYTimes produces about elections, demographics and of course the NYTimes Style section practically runs on Flash. But these iPad devices will be so important that content producers will work around that. Serving up iPad specific content like they now serve up mobile specific content. iPhones are less than 1% of the browsers in use, but many sites have produced iPhone specific “M-dot” sites to cater to those individuals.

    It’ll be the same with iPads. An Adobe blog showed a Disney site with “blue Legos,” but I’m sure Disney’s largest stockholder is seeing to that and it will be fixed in short order. Have you seen the YouTube video with the 1-year old using an iPhone. Hand a kid an iPad with some Disney content, delivered by either the built-in Mobile Safari browser or better yet the App store with a free App with the option to buy more game levels, princess outfits, etc. The parent will get hours of peace and quiet. Yes, that’ll enhance shareholder value on all sides of the equation.

    The bottom line is that Adobe, Microsoft, et.al. give away their plug-ins and runtimes, in order to sell their proprietary IDE’s to create content for said plug-ins and runtimes. Apple gives away their SDK’s in order to sell their “insanely great” proprietary hardware and for a cut of the App and iTunes store. I say pa-TAY-toe/Pa-TAH-toe that’s capitalism!

    One other thing is what I call the migration towards the mean or average. There is an average number of features that will satisfy the bulk of people. And if the bulk of those features can be handled within HTML5 compliant standards, then the other technologies will become less relevant. Now I don’t have a list of those features, but I could take a guess that they don’t include “that isn’t all that Flash/SilverLight is used for.”

    And Roger, I think you hedged your thesis with “or more particularly – with development languages like AS3 and C#.” That would be my argument that the RIA creation would be more in the platform native SDK such as Objective C, with the proper wiring to handle multi-touch, gestures, etc. in these smaller form factor devices. And not in some sort of “glue” plug-in or runtime component dropped into the OS. Being that this “glue” is a kludge that provides sub-optimal performance, both in CPU cycles and user experience.

    And the user experience is important, that’s why I mentioned the granddaughter cheerleading story above. I have a daily newspaper I visit that has a Flash widget that scrolls a listing of available jobs, and after about 20 seconds I hear the fans roar to life and I have a BashFlash menubar item that I use to kill off that little annoying instance of Flash. Just scrolling clickable text and it has to fire up a 2.2 GHz Core 2 Duo just to do that.

    To reiterate, 1.) Flash/SilverLight and the like are kludges that make the user participate in the kludge via plug-in, runtime downloads and roaring fans dedicated to CPU cycles.

    2.) As HTML5 standards capture more of the average set (migration toward the mean) of features needed for a modern internet experience, the need for these kludges will recede.

    3.) Rich Internet Applications will more likely be authored in the platform native SDK for issues of performance, tight usability requirements and the opportunity to monetize the development work through the platform specific App store.

    4.) And the “tyranny of choice” will tend users toward devices that just work. Also this point has a corollary called the “network effect” when another person buys and starts using a device you already own, it makes your device more valuable, because a.) it provides a prospective developer more opportunity for sales and therefore incentivizes development, b.) people with similar devices can use software to connect, share and play games (the telephone is the classic “network effect” device, one phone not so useful, a world of phones, useful) and c.) the collective can provide support, hints and tips to like minded group of users.

    Cheers!!!

  19. I wrote an article recently about why HTML 5 is not yet ready to replace Silverlight here:

    http://silverlighthack.com/post/2010/02/08/Top-Reasons-why-HTML-5-is-not-ready-to-replace-Silverlight.aspx

  20. Phil says:

    Great post.

    As side, notes; I wonder why companies like Google and Mozilla are jumping into HTML 5- it is not yet even standardize. Also, what the author said is true, however, some thing just do not change much. How can you make or tages more complicated or more powerful? Some things in Software Engineers can stay the same in 13 years.

  21. Evan Mullins says:

    SmartyP! Great post, I’ll be sending people here to understand the situations, I’ve been trying to explain to people that the reason they want flash killed is because of all the bad uses of it. When flash is properly used, they most likely don’t even notice it’s flash. The horrid intro screens and talking imposing ads IMHO are awful for user experience and people should be hating the creators of bad content rather than the tools they are using.
    I’m very excited for HTML5 and the new things that will be easier to do in it, but nowhere close to replacing apps like picnik or aviary, or the multi-touch applications you mention, or even augmented reality and games. Anyways… thanks =)

Leave a Reply