Some things last too long in this fast changing world of IT. HTML 4, for instance. It was specified in 1999 – ten years ago! Tell me 5 more things in IT that lasted so long without changing to newer version or disappearing forever…

So now we are talking about a newcomer eventually – HTML 5. Why? Was HTML 4 not enough any more to cope with growing developer needs or Internet user desires? Both. There’s even third separate reason – web crawler companies, and I mean really broad range of businesses here. And before we start considering what exactly differs HTML 5 fr om previous version, something has changed in general W3C approach to the specification lifecycle management:

The HTML 5 specification will not be considered finished before there are at least two complete implementations of the specification. (
…Sounds good, sounds like they want it to be successfully implemented, not successfully specified. Now let’s see what’s inside the wrapper.

New markup tags. Examples: <nav>, <aside>, <dialog>, <section>, <article>, <header>, <footer> et cetera. Most of it (if not all) could be substituted with <div> tag in THML 4 but actually that is the point – adding semantics to the layout tags. Now it will add way more clarity when you automatically parse a web page. If want to run a search query against only what people say (but not the entire Web), new generation search engines will give you this ability by searching in only <dialog> tags. Now the question is, how flexible the new markup is going to be? Will it allow to relatively easily customize these tags or they will gradually get obsolete and web developers will keep signing their old (even though annoying) song: div! div! div!

New media tags. <video>! Now it is gonna be that simple. <video src=”video.ogv” controls poster=”poster.jpg” width=”320″ height=”240″></video>. That’s it. And now web browser needs to take care of it. Evidently browsers will be on different stages implementing different formats and support for codecs. This is raising a fair amount of questions:

  • Would HTML 5 put a pathetic end to Flash and Silverlight plug-ins?
  • What about codecs? Does same tag actually mean any media unification?
  • How would <video> and <audio> tags impact browser market shares near term?
It is now quite obvious that HTM 5 is a specification for modern warfare and the immediate battlefield is gonna be world of web browsers and related businesses. Example with codecs is very typical. Google representative at W3C Ian Hickson said:

“I have reluctantly come to the conclusion that there is no suitable codec that all vendors are willing to implement and ship. I have therefore removed the two subsections in the HTML5 spec in which codecs would have been required, and have instead left the matter undefined, as has in the past been done with other features.”
Read more on HTML 5 in respect to Flash & Silverlight (here and here) and this article about codecs question. There’re first (yet incomplete) implementations of <video> tag in Opera and WebKit, but this is just “experimental builds”, not hardened yet.

Something interesting is definitely coming…

Other good things. I didn’t have an objective to outline every bit of new flavour for HTML 5 in comparisson to HTML 4. I wasn’t expecting this post being even as big as it is right now. There’s few more things though that impact web development pleasant way:

  • 2D drawing API implemented via <canvas> tag. More info on canvas and list of references here.
  • Simple way to implement Drag & Drop functionality. This one was always a challenge for web developer and not so often you can see it even in enterprise web applications wh ere it could be maybe even more useful than for web sites. Now life will be easier I guess with draggable element attribute.
  • API enabling offline Web applications. This is interesting, partially one of the objectives that Adobe AIR architects put on their agenda few years ago. Now we have a chance to have it just in the browser. There’s two approaches for this one – SQL based API and Offline HTTP Cache API. More on support for offline applications here.
That’s an interesting and pretty big change overall. More news coming soon definitely…
Alex Yakima
Paul is a software architect for Luminis Technologies and the author of “Building Modular Cloud Apps With OSGi”. He believes that modularity and the cloud are the two main challenges we have to deal with to bring technology to the next level, and is working on making this possible for mainstream software development. Today he is working on educational software focussed on personalised learning for high school students in the Netherlands. Paul is an active contributor on open source projects such as Amdatu, Apache ACE and Bndtools.