W3C recommends waiting for HTML5 to complete before using it
While the whole world might be shouting praises of HTML5 off the rooftops, it is the W3C (World Wide Web Consortium) itself which has taken a more skeptical approach and recommended against using HTML5 technologies on the web today.
For a little perspective, W3C is the international standards organization which would be the one to “standardize” HTML5 by giving it their recommendation. Their concern lies in the fact that HTML5 is not implemented in an interoperable manner among different browsers, and as such HTML5 is not “ready for production yet” and is not ready for deployment. This flies in the face of efforts by Apple, Google, and even Microsoft in promoting the new “standard”.
Their concerns do have some weight, first of all, consider the penetration of HTML5-capable browsers. Internet Explorer, which is still the most widely used browser in the world, with around a 50% share, does not support HTML5 and related technologies. Of the rest, Firefox with around a 30% share has more users than the rest of the browsers combined. Of Firefox’s share, HTML5 capabilities vary with version, and even the latest 3.6 does not support most HTML 5 features.
So in the end the true audience with HTML5-capable browsers is rather small. Internet Explorer 9, the first version of Internet Explorer with extensive (but still incomplete) HTML5 features will only come out next year, and then too it will be unavailable for computers running Windows XP, currently the most widely deployed desktop OS.
Secondly, we have to come to one of the most heavily sensationalized HTML5 features, web video. There is currently NO universally supported video format for HTML5. The HTML5 specifications currently does not specify a video format for use with the HTML5 tag since no suitable format was found for the purpose. While Google’s WebM aims to to become such a format, currently it is as much part of HTML5 as Theora is — which is to say, it isn’t.
All this excitement about HTML5 has had negative effects. For one many people are not even aware of what constitutes HTML5. If you saw those nice rounder borders, text and box shadows, or transitions applied to items on a webpage, that was most probably CSS3, not HTML5. A lot of websites are offering web video using the HTML5 video tag, however since no video format has been chosen this can hardly be called HTML5-compliant. As we said before no single format is guaranteed to work across all browsers. Mozilla only supports Ogg video in it stable Firefox 3.6 browser, and supports both Ogg video and WebM in the betas of its upcoming of Firefox 4. Opera supports both WebM and Ogg in its latest stable version 10.60. Google Chrome supports Ogg, WebM and H.264. Internet Explorer does support any, and with IE9 it will support H.264 and users will be able to install a codec for WebM. Finally Safari only supports H.264.
For a video to work everywhere you would need to support at least two formats! While Apple touts HTML5 video on its iPad browser with support for DRM and streaming of H.264 video, neither DRM, nor streaming, nor H.264 are part of HTML5. Their implementation is limited to their products.
Taking all of this into account, it is easy to see why W3C is upset by the growing popularity of HTML5 before due time. HTML5 has become a buzzword more than a standard, one that each company tries to manipulate for its own purposes. The HTML5 standard is already polluted.
If the HTML5 specification were to now espouse WebM as the format of choice for video where would that leave the web, and the implementations by Apple? All non-standard of course.
Finally, HTML5 is supposed to be a version-less specification, simply HTML. While the specification as a whole continues to evolve, parts of it, such as the 2D canvas are stable and ready to be used. Unfortunately, one of the undecided portions of HTML5, that is the video tag, is also in wide usage despite being incomplete.
Even so, this is not too much different from the current state of HTML4 that is still not rendered exactly the same by all browsers. It requires browser detection “hacks” to ensure that each page is rendered the same across all browsers. Yet HTML4 is a “standard” or a W3C recommendation by any count and has been so for many years. HTML5 is supposed to pave a clearer future but it is clear that simply standardization is not the answer. Why dissuade people from using newer features then, if differences in implementation are are going to persist anyway?