HTML5 And the Case of the Missing Browsers

The Web Hypertext Application Technology Working Group (WHATWG) started work on the HTML5 specification in June 2004; Ian Hickson of Google, Inc. is the editor of HTML5. HTML5 still has a long way to go.

A long way to go
The specification is an ongoing work, and is expected to remain so for many years, although parts of HTML5 are going to be finished this year and some are already implemented in browsers.

According to the W3C timetable, it was estimated that HTML5 would reach W3C Recommendation by late 2010. However, the First Public Working Draft estimate was missed by 8 months, and Last Call and Candidate Recommendation were expected to be reached in 2008, but as of  this writing (November 2010) , HTML5 is still at Working Draft stage in the W3C.

The editor of the HTML5 specification expects the specification to reach the Candidate Recommendation stage during 2012. In sum, HTML5 still has a long, long way to go, so don't get too excited just yet.

Obviously, browser vendors are keen on implementing as much of the HTML5 spec as possible, especially areas like handling audio and video. This becomes more of a turf war, though, since at this point we are dealing with competition for the Flash and Silverlight plug-ins.

New Elements
HTML5 introduces a number of new elements and attributes that reflect typical usage on modern websites. Some of them are just replacements for common uses of generic block (<div>) and inline (<span>) elements, for example <nav> (website navigation block), <footer> (usually referring to bottom of web page or to last lines of HTML code), or <audio> and <video> instead of <object>. Some deprecated elements from HTML 4.01 have been dropped, including such elements as <font> and <center>, whose effects are now achieved using Cascading Style Sheets (CSS). There is also a renewed emphasis on the importance of DOM scripting (e.g., JavaScript) in Web behavior.

The HTML5 syntax is no longer based on SGML despite the similarity of its markup. It has, however, been designed to be backward compatible with common parsing of older versions of HTML. It comes with a new introductory line that looks like an SGML document type declaration, <!doctype html>, which triggers the standards-compliant rendering mode in the browser. HTML5 also incorporates Web Forms 2.0, another WHATWG specification.

Browser vendors are also looking at ways to speed up rendering, such as GPU Acceleration and enhanced Javascript parser engines.  At this writing, major browsers (Chrome, IE9 , firefox 4) are all leveraging GPU for 2D/3D rendering.

New APIs
HTML5 also specifies scripting application programming interfaces (APIs). Existing document object model (DOM) interfaces are extended and de facto features documented. There are also new APIs, such as:

The canvas element for immediate mode 2D drawing.
Timed media playback
Offline storage database (offline web applications).
Document editing
Drag-and-drop
Cross-document messaging
Browser history management
MIME type and protocol handler registration.
Microdata

Not all of the above technologies are included in the W3C HTML5 specification, but they are in the WHATWG HTML specification. Some related technologies, which are not part of either the W3C HTML5 or the WHATWG HTML specification, are:

Geolocation
Web SQL Database, a local SQL Database.
The Indexed Database API, an indexed hierarchical key-value store.
The W3C publishes specifications for these separately.

Product Promotion and Browser Wars

Vendors anxious to implement as much of the HTML5 specification as possible are constantly coming out with beta and preview versions of their browsers; most notably Internet Explorer, Google Chrome, and Firefox.

But the problem with an unfinished spec is that each vendor has a particular slant on what they want to include first, and how they want to interpret it. For example, one of our Eggheadcafe.com readers recently posted an FAQ, "Which browser fully supports HTML5?", pointing to the W3C's test suite here    and claiming that of the 212 tests in the test suite, Internet Explorer 9 had better results for the browser that is "most suited for HTML5".

This, however, is more likely wishful thinking than the truth.  The HTML5 test at http://html5test.com gives IE 9 a score of just 96 out of 300, while Google Chrome scores 231. Obviously, one *could* conclude from this that the test at Html5Test.com seems to be more feature complete. The question at this early stage is more like "What features do I think are the most important, that I want to try and put into my browser product now?"  And the best answer at this point to "Which browser fully supports HTML5?"  is that "No browser fully supports HTML5" -  and it will be quite a while before one actually does. After all, the specification itself isn't complete.

Another useful browser test is the ACID 3 test which is focused more on browser rendering capability. On this test, Google Chrome gets 100 out of 100. Internet Explorer 9 Beta gets a 95. You must turn "Compatibility View" off to see correct results on any of these tests, otherwise IE9 will "dumb down" to the lowest common denominator.

W3C readily admits that the test suite for HTML5 is misleading, and states that "several thousands" of different tests will be needed to fully validate the specification.

Likely Outcomes
The bottom line for HTML5 is hopefully a benefit to the user of the World Wide Web - useful features that make browsing more productive and enjoyable, without having to resort to plug-ins such as Flash or Silverlight. However, Flash, Silverlight, ADOBE PDF and other plugins are all unlikely to go away anytime soon, and there are certain types of applications, particularly line-of-business apps and complex multi-component multimedia presentation apps, that HTML5 may never be able to deliver by itself.

By Peter Bromberg   Popularity  (1693 Views)