HTML5 vs Flash

For quite some time now there’s been this whole spiel going on about how it’s HTML5 vs Flash in a battle to the death. About how HTML5 is going to kill Flash, that Flash is on the way out. That there’s no reason to rely on Flash for X, Y and Z. I’m going to post my own thoughts on the topic, so bear in mind that what I’m saying here is my own opinion and is, by and large, completely unsupported by anything even remotely close to facts.

HTML5 will kill Flash… except it won’t

Like I said, HTML5 is being hyped to kill Flash. The problem with this claim is that it won’t. HTML5 and Flash aren’t mutually exclusive and they can co-exist with one another. What I believe that HTML5 will do, however, is help realign how content is displayed on the internet, help improve how it is displayed on the internet, ensuring that the correct tool is being used for the correct job.

Site Design — A History Lesson

Flash based web sites came about in and around the era of the browser wars, when making sites work on various browsers was virtually impossible. “Best viewed in Internet Explorer” is a relic left over from this era and, if you’re like me, it still makes you shudder. Flash provided something that nothing else did, consistency. This became less of an issue as time went by, with tables becoming the norm for layouts before moving onto CSS for layout and styling, the point we are at today.

Flash Design/Layout/Content?

The problem, however, is that as time moved on and browsers became better capable of providing a consistent layout across browsers not everyone wanted, or perhaps felt the need, to update their skills. This is, to me at least, why we still see flash powered sites and why we see sites laid out using tables. Both served their purpose and the technology for both still serves their purpose in current design. Their time for being used for laying out content, however, is long gone.

Content should always be as searchable as possible and as style-able as possible. Flash provides a limited functionality for styling and virtually no capability for search engine friendliness, though this is slowly changing with time. HTML has always provided a good quality of search engine friendliness, and CSS affords better control over the layout of a site than tables ever did.

What is Flash for then?

Like I said originally, HTML5 and Flash are not mutually exclusive. Using one does not exclude the use of the other. There are some things that can be implemented better, or only, by Flash. A few of these include:

  • Truly Immersive Experience
  • Securing Online Video

Some sites require a level of interaction that is only available using Flash. These instances are usually few and far between but when they occur you should use the correct tool for the job. Whilst JavaScript Libraries are leagues ahead of where they were in the past, they still aren’t capable of delivering the same level of experience to the end user.

Whilst HTML5 provides tools for embedding video content into a web page, it doesn’t afford any capability to secure the content. Anything embedded using the HTML5 option is able to be downloaded similar to how you can save images from a web site. Flash provides a better capability for securing video embedded online.

Why is this so important? Big Media Companies are beginning to stream their content online to their viewers. The last thing they want is to make these files available for download, as it would only serve to lose them money which, at the end of the day, is what their primary focus is.

Wrapping Up

HTML5 won’t replace Flash, but it will give people that wish to use them more tools with which to deliver content. Got a podcast you share on iTunes? Why wrap your content in flash when you can use the same file in both places? It’s less problematic and several browsers will support the h.264 codec iTunes uses (Safari, IE9 and Chrome currently). It’s less work to provide the same experience in multiple places.

There’s a whole bucket of things that HTML has over the Flash format but, at the same time, there are plenty of things that are better implemented using Flash. What needs to be done is make sure that the right tool is being used for the right task. Right now, I feel, Flash is being used as the wrong tool for a lot of things.