A lot of folks have been raving about HTML5 lately and I’ve been a little behind on writing about it, especially being that I’m a Flash developer and it is being touted as a “Flash killer”. I’ll keep this short and not ranty, but there’s a few things I want to discuss.
- HTML5’s feature set, even when you consider new abilities that are still experimental, is not even remotely close to what modern Actionscript programming has to offer. The days when Flash was just good for banner ads and website intros has long since passed. If you’re not already familiar, take a look here, or here to see what I’m talking about. Talking about it as a Flash killer is really quite silly. If anything, HTML5 will encroach on Flash at simple interactive experiences, basic video, and “Web 2.0” ui. Flash, meanwhile, will be moving deeper into developing full applications and insane experiences. This is all good. Everyone should be happy. YAY!
- HTML5 has a lot of claims about what it can do, but the dirty little secret is that like previous versions of HTML, the major browsers have decided to implement the standard differently. Things that should be consistent are not. The best example of this is the HTM5 video object, which is supported badly, with lots of bugs (that vary from browser to browser), and supporting different video types in each browser. These issues are extensive still because HTML5 is still evolving. It’s not a fast process at all, and will be years before we can safely use the features that are currently defined, let alone the new concepts on the horizon.
Here are two very important links for HTML5. These are instrumental references for developers, and really good info for the rest of the world:
html5please.us - This shows the major new features in HTML5 and CSS3, along with a description of whether they are currently safe to implement alone, with some extra JS code, with caveats or fallbacks, or not at all.
caniuse.com - This site goes into more depth. Feature by feature it shows which browsers and versions are supported fully or partially.