Into the bog
Sunday, September 6, 2009 12:18:32 PM
HTML5 has come a long way since Web Applications 1.0 was an accompanying WHATWG spec to XForms Basic. It is now a well-grown spec with good support from all browsers eventually even IE, with or without help from their good friends in Google.
In the beginning only a handful people at the fringes of W3C had heard of it, now HTML5 is a trending topic. XHTML2 is dead, and HTML5 is about to enter the Last Call. This is the darkest hour for HTML5, when the spec is in the greatest danger.
W3C CallingTraditionally a W3C spec is produced like this. The first few months the committee members get to know each other, a majority anxious to represent their own company well will discuss with their competitor endlessly on the seemingly most trivial details. A smaller, quiet, group is evidently there largely to observe that nothing untowards will happen for their organisation, a few may even be there because they have a vested interest in the group failing (these are "not in good faith").
This will goe on for a few months, during which the working group will be greatly diminished in size. Depending on size and animosity the group might be divided into subcommittees. Eventually they will end up with an internal draft, or two competing drafts. After some more quarreling a few editors are willing to write down the the consentual parts. This results in the first public draft. It will be ignored. Then a small number of new drafts will be published until the group and editors agree that this is a mostly coherent spec. This they will call the Last Call.
That gets people's attention. If it affects the organisation's activities or standardista's pet peeves, they will make a flurry of emails with issues to be handled according to W3C Process. If nobody cares, or if the group is brazen enough, even this phase passes quietly, which is why so many poor specs have passed the W3C system.
Getting a spec from nothing to Last Call takes a huge effort of editing and consensus building, but it is the Last Call that sinks specs. A prime example of this is CSS 2.1 which had been in LC for half a decade, feeling like half a century, even returning from the relative safe harbour of Candidate Recommendation a number of time.
Final CallLast Call is where you stop specs you don't like, and even good intentioned reviews can unleash an overwhelming number of issues to bog down the working group for months, years, centuries.
Stealth specs, SMIL springs to mind, pass this stage easily. However HTML5 is anything but stealthy, everyone will want to have a say, and not everyone will be good intentioned. HTML5 has a lot of enemies who would like to see HTML5 ending like a Caesar at Capitol.
A skilled facilitator could add a little laxative to this unseemly process, to make it go quicker. However you can call Ian Hickson, First Editor of HTML5, a lot of things, but not a great diplomat. To my slight surprise in the latest fracas he was actually among the least offensive one around. Maybe I'll live to see Ian Hickson as the elderly standards statesman, complete with a fake beard.
Summary: A Summer SkirmishThe early hunting season started with something at the periphery of HTML5, as well as at the periphery of accessibility, the table
summaryattribute, removed in HTML5 draft. This event triggered what the web weatherman called a shit storm.
Browsing through the discussion gave the distinct impression that either party considered the other party barbarian idiots, which probably was as damaging as the disagreement on an issue that both parties agreed was very unimportant.
This W3C reality show was just an early skirmish, a prequel, a foreshadow. This was not the end, nor the beginning of the end, nor the end of the beginning, nor the beginning of the beginning.
I was a little primed for this debate by Steve Faulkner's pair of inverted pyramids, showing the difference between what was important and what was most discussed.
For me a more relevant question would be: Why is Facebook so bad (in regards to accessibility, leave any other complaints at the door)? Is it because the developers are so ignorant? Then why are the Google applications so bad? Do they use the same developers? Or is there something missing between what they want to achieve and how they have to go ahead to achieve that that makes the design so fragile. Questions like that triggered the WAI-ARIA spec.
Personalities aside I belive the all parties are in good faith, everyone will benefit from a more accessible Web, and HTML5 can offer that. To achieve that it is necessary to look at what the real goals are, and how they can be achieved.
Depending on idealistic goodwill above and beyond from web developers, or threaten them with lawsuits otherwise, will not be a success. It must be easier to make sites and services accessible than to make them inaccessible. For this to work all components would have to be made with this in mind, just like it only takes one barrier to make an accessible route impassible for a wheelchair user.
The WAI accessibility guidelines are just tools, ct that the existing standards are not good enough. Ideally we should do away with them all. When you make a web page or application it should be accessible, end of story.
Making the implicit explicit
In W3C, you ignorant slut! Shane mentioned two issues with HTML5 I wasn't really aware of, having happened after I ceased to pay attention.
(see their redefinition of what a URL is or their relegation of the definition of rel attribute values to the WHATWG)The
relvalue is a different story, but I have come to applaud the "redefinition of what a URL is", or to be exact the "willful violations. Don't get me wrong, wilful violations are not desirable, but in this case Ian has done us all a great favour in flagging these violations. Ideally the number of violations should go towards zero. This can be done either by updating the violated specs, or the legacy processing, or both, on a case by case basis.
To change either map or landscape we first have to be aware of the discrepancy, then we would have to use experience and judgement to find out which one should yield. Making the implicit explicit is what Ian Hickson is very good, nay excellent, at. This, together with his evil sense of humour, may be what makes him not an excellent diplomat as well. It definitely is the major factor that has made the HTML5 spec so huge and a hard read at times. Being explicit comes at a cost.
Also a political cost. The nice thing about vagueness is that both debating parties may be led to think that they have won the debate, and victors are always more malleable than losers. The nasty thing about vagueness is that it is the opposite of interoperability, in effect it postpones the problem and makes it more expensive to fix.
This editorial pedantry is thus highly commendable, but it has a downside, it will begat more pedantry. Given the long, public, and noisy process this far HTML5 is more polished than most other specs reaching Last Call, and it would be easy to think that this would make the passage through the system easier. Those of us that have stayed away from the HTML5 mailing lists due to the sheer volume of participation would wish it were so. Unfortunately what we can expect it that it is going to be a very long, very tedious, very wet journey through the bog ahead.