I don’t think I’ll be going out on a limb if I predict that the hot topic of 2009 will be HTML5, the proposed update to the markup language which acts as the foundation to everything we (web monkeys) do.
This week saw the publication of a few articles on the subject written by respected members of our industry. While a lot has been written already about the potential of the new language, these are notable for their more practical approach.
In the A List Apart article Semantics In HTML 5, Microformats doyen John Allsopp takes a look at the limitations of the language and suggests a way to improve it; to summarise, he proposes that instead of introducing a multitude of new elements, we should consider introducing new attributes.
For example, he advocates the use of
<div structure="header" /> over
<header />. This, he says, has the advantage of being both backwards- and forwards-compatible, as well as providing much-needed extensibility.
Eric Meyer writes about his experience using HTML 5 for the recent redesign of An Event Apart, which seems to be pretty well summarised as “it doesn’t work yet”. Really, all he did was write HTML 4.01 with an HTML 5‑compatible doctype (see later). Browser support just isn’t in place for much more yet.
Jeremy Keith also used HTML 5 for the markup of the new UX London site, and writes about his findings in The Rise of HTML5. His conclusions are more or less the same as Meyer’s, although he provides more practical detail.
The important message to take away from these articles is not the (perceived) failings of HTML 5 and browser support for it — after all, it’s still a relatively immature proposal — but that actual implementations are being undertaken and reported on. This kind of reporting — part feedback, part discussion, part evangelism — is vital to the development of the language and the future of the semantic web.
That compatible doctype I mentioned earlier, by the way, is:
It triggers standards mode in (afaIk) every modern browser, so you can start using it straight away — although the W3 Validator will throw an error.