Paul McAleer

HTML5: Don't Be Chicken

Paul McAleer

In my first job out of college I was filled with ideas on how amazing the web could be. When I had the opportunity to do a top-to-bottom redesign of my company’s website I knew it would be a great challenge, a lot of fun, and my chance to introduce CSS to the organization on a large scale. 

Coding for the web was quite different ten years ago, so the idea of a site realizing the separation between HTML for content and CSS for presentation was still relatively new. Industry gurus like Jeffrey Zeldman led the way, encouraging web developers like me to code for the future and not the past. Table-based layouts? Font tags? Colors defined in an HTML document? No, no, and no. It was an exciting time but in the years since then, Adobe and Macromedia have worked hard to position Flash as the standard for interactivity on the web. Flash keenly targeted cross-browser development at a time when it was still difficult to do with HTML and CSS. HTML apps, it seemed, were destined for not-as-greatness.

In 2000 the big question was, “Who’s going to go first?” Would developers start coding towards standards and have browser vendors follow? Or would a vendor step up and push the envelope? There wasn’t a good answer back then: developers would need to account for IE and its lackluster standards support, which was costly, so why not just code for IE since things will be fine in Netscape? Many websites had to target the past and ignore the future.

But in 2010 we have major browser vendors implementing the emerging standard today. You can create an HTML5 application which runs offline and have it work in a number of popular browsers on different platforms. You can manipulate visual elements in CSS3 and JavaScript right now with ease. You don’t have to wait for a browser vendor with 75% share to implement it. You can design an amazing HTML5 experience for Android, iPad, iPhone, Chrome, Safari, and Firefox that doesn’t need a lick of Flash and degrades nicely for IE users.

I read with interest this morning that Scribd is ditching Flash altogether for HTML5. All of their documents will be converted to HTML5 and, thus, will be available cross-browser and cross-platform without the need for a plugin. This is coming at a significant cost: their CTO claims that 3 years of Flash development is being scrapped for this. Yep, it’s risky, but I applaud this forward-looking decision (and hey, isn’t that what C-level execs should be doing?) With even Adobe this week admitting that they want to be creating HTML5 tools, it’s clear: Flash is moving from an HTML alternative to a niche player, and it’s happening very quickly.

So will Flash survive as an HTML alternative? Not a chance. What about as an ad-serving platform, as rich media ads are nearly all Flash? No, especially if the success of the iPad, iPhone, and iPod touch continues; there are too many customers at stake and iAd’s HTML5 support is a brilliant move. Will HTML5 come to feature parity with Flash? I’m very confident it will: look at how far JavaScript has come thanks to libraries such as jQuery, Prototype, and YUI. There’s no reason to think that amazing toolkits won’t build up around the new standards.

Now, Flash won’t completely go away for quite some time. There will be laggards who need to support Flash 10 for one reason or another, possibly to provide a nice ROI on an investment in Adobe’s platform. But imagine the business argument in a year or two: you can have a rich, interactive experience everywhere - mobile, desktop, tablet - based on open (free!) standards, or you can have a rich, interactive experience only in places where Flash is installed and runs efficiently. Why wouldn’t you target HTML5?

Flash will have its fans within its developer community (and web comment sections, natch) but it’ll lose the hearts and minds of average web users and business leaders who just want apps that work. For developers and organizations alike, ignoring HTML5 is foolish; dismissing it altogether is ignorant.

Making websites and webapps in 2010 is different than it was in 2000, to be sure. But HTML5, CSS3, and JavaScript make me genuinely excited about what this platform can do. We can only build for the future by letting the past go. It’s time to move forward.