I have come neither to bury HTML5, nor to praise it.
I didn’t think any word could get more overused than Web 2.0, but HTML5 has come close. You can’t go to a tech conference nowadays without HTML5 being mentioned through lips moist with anticipation. Companies are profuse with their promises of HTML5 support, even if they don’t have a clue what “HTML5” is, and whether it’s even relevant to their businesses.
We’ve heard it’s going to kill Flash, squash proprietary technologies like Silverlight, beat Microsoft into submission, combat all evil in the world, and I’m sure, if given a faux diamond crown, would also bring world peace.
We’ve also heard that it is nothing more than a pipe dream, with a implementation date decades in the future, controlled by a megalomaniac with an evil cabal of “do no evil” companies as backup singers. It is hailed as both the triumph and the death knell of the W3C.
Everyone who works with the Web knows HTML5. Ask most folks, though, what is HTML5, and they’ll either mention technologies not directly associated with the HTML5 effort, such as geolocation, or they’ll focus on a couple of the more glitzy components, such as Canvas and video, and some vague references to new semantic elements.
HTML5 is both more and less than the assumptions surrounding it.
You’re not going to read about geolocation in this small book. Neither are you going to read about Canvas or video, though I do have strong opinions about both. No, I’m going to talk about that other stuff that makes up HTML5: the little things, such as individual elements and attributes; and the bigger things, such as the philosophies governing what is, or is not, included within the HTML5 specification. Not random topics, either: all of the items I’m covering are either related to an existing HTML WG issue, or bug; all of the items have been picked because they represent four major areas where I feel the HTML5 specification has…challenges
First, a little background. I’ve been working off and on with the HTML5 working group, known as W3C HTML WG, for some time now. I am an invited expert. Don’t be impressed, in only means I don’t do this for pay. I didn’t have to do anything extraordinary to become an invited expert. Unlike some other efforts at the W3C, the HTML WG is a remarkably open group: anyone can join, barring membership company restrictions. You don’t have to travel to the face-to-face meetings held once or twice a year, attend the weekly teleconferences, vote or respond to any of the polls.
In fact, you don’t have to do anything to be a member of good standing in the W3C HTML WG. If you consider that currently there’s over 400 members, but the last time a poll was taken, only about thirty people responded, well, you can see that “good standing” probably means still breathing, and not so obnoxious that you’re kicked off the group—and some would say that you have to be pretty damn obnoxious to get kicked off, as no one has been forcefully removed. Yet.
Also unlike many other W3C groups, including past efforts for HTML and XHTML, the HTML5 specification aonly has *one editor. Well, author, really, since the person doing the editing, Ian Hickson, is also the person making many of the decisions about what’s included.
The HTML5 specification is currently under administration by two organizations, rather than one: the W3C, and the Web Hypertext Application Technology Working Group, otherwise known as the WhatWG. The WhatWG originated with a small group of people, and still consists of only a small number of members. Back in 2004 or so, the WhatWG folks became frustrated with the direction the W3C was taking with XHTML. They decided to begin their own work, first in private email discussions, and then later at the WhatWG web site and email forum. According to the front page for the organization, dated 2004, and found at the Wayback Machine:
The Web Hypertext Applications Technology Working Group is a loose, unofficial, and open collaboration of Web browser manufacturers and interested parties aiming to develop new technologies for the easy deployment of interoperable Web Applications.
The creation of this forum follows from several months of work by private e-mail on specifications for such technologies. The main focus up to this point has been extending HTML4 Forms to support features requested by authors, without breaking backwards compatibility with existing content. This group was created to ensure that future development of these specifications will be completely open, through a publicly-archived, open mailing list. Working drafts of the specifications will be continuously available on the WHATWG Web site. As the drafts reach stable milestones, the group will publish snapshots for extensive review by the community.
Well, we’ve gone beyond work on HTML4 Forms.
In 2006, after the browser companies said “Bad Dog! No biscuit!”, the W3C signed on board with the WhatWG, leading to the alliance we have today. A many times uneasy alliance, and therein lies one of the more challenging aspects of working with HTML5. So challenging, and frankly, so contentious, that the W3C HTML WG co-chairs, Sam Ruby, Paul Cotton, and Maciej, decided to create a Decision Process to handle editor/member disagreement.
How the process works is that we file bugs against the HTML5 specification. Doesn’t matter how small or large the bug, it has to begin with a bug. Then the editor either decides to make an edit to the document based on our bug, or marks it WONTFIX, in which case one of two things can happen: nothing, or someone disagrees with the editor’s decision, and escalates the item to an issue. From that point on, the issue goes through a change proposal process, which is what led to me writing this small book.
I have ten change proposals to write by March 31st, and I decided to group the effort in this publication for a couple of reasons. First, I’ve been working on a Drupal ePub theme in order to easily convert Drupal books into actual ePub books, and this seemed like a way to have a little fun with the change proposal process. Second, there’s information I wanted to communicate that doesn’t fit within the rather inflexible boundaries of the W3C HTML WG Decision Process.
Information such as, how long can this dual group thing continue? In a comment to the WhatWG weblog, Marcos Caceres wrote:
You know, it’s really great that people are thinking about the future of HTML. But it troubles me that this work is being done outside the W3C for a number of reasons. The WHATWG does not have a patent policy, nor does it have a wide representation of all stakeholders (browser vendors are not the sole custodians of the Web, as represented by the WHATWG invite only membership). It’s also troublesome that Opera, Apple, and Mozilla retain copyright over the document, without a proper license (“You are granted a license to use, reproduce and create derivative works of this document.” doesn’t define what those terms and limits are, which is a threat because one particular company in the group is know for it’s predatory pursuit of IPR violations). As a start, maybe WHATWG HTML should be under a world-wide CC license. Better still, why can’t this be done as an open incubator group at the W3C? The W3C got it’s ass kicked by the WHATWG wrt XHTML and XHTML2. The director already admitted they fucked up royally and gave the WHATWG everything they wanted (killed XHTML, made a totally open WG). I don’t see what role is left to be played by the WHATWG apart from continuing to undermine the work and membership of the W3C and continue to push their solutions on the rest of the community. I think it’s wrong that the WHAT-WG believes it owns the canonical version of HTML and should stop attempting to undermine the W3C and its membership.
What a lot of people don’t know about the WhatWG is that it is nothing more than a web site. It is not a legal entity, so it cannot grant licenses, or otherwise give any form of legal permission. The only one who can, is Ian Hickson. He owns the web site, it’s served on his server, if it goes down in the middle of the night, it stays down until he’s up the next morning to get it started again. His is the only name on the HTML5 specification at the WhatWG web site.
The browser companies may have kicked the W3C’s ass, but they also need the W3C, as much as the W3C needs them. The W3C is a legal entity, does have a patent policy, knows how to ensure companies can work together and no one gets clobbered with IP issues. We also have to assume that if the server goes down in the middle of the night, it doesn’t stay down until Tim Berners-Lee gets up in the morning.