On HTML5 vs Living Standard, W3C vs WHATWG
That nice Stephen Shankland just published a news report HTML5 is done, but two groups still wrestle over Web’s future on CNET, quoting me a couple of times.
As I’m occasionally asked questions about how I see the two different organisations working together (or not), here are the full questions that Steve asked me, and my responses (as approved unchanged by my bosses at Opera). I’m grateful to Steve for giving me his permission to reproduce them.
SS: How big a problem is it that WHATWG and W3C both are sorta kinda in charge?
BL: It’s not an especially big problem for the vast majority of developers who aren’t developing sites using still-fluid features that are only available in the latest nightlies. Where they differ, the W3C spec is a better guide to the stable features as implemented already in browsers – for example, it has dropped the <hgroup> element, warns about the lack of implementations of the outlining algorithm and has much better advice on using the <main> element today to make websites more accessible to people with disabilities.
SS: Which do you think has more power in charting the future of the standard?
BL: Neither. The power is with browser makers. As Ian Hickson of WHATWG said, it doesn’t matter what the specs say if browsers don’t implement them.
SS: It seems kind of like we have two horses pulling the same cart, with no coordination between the horses. Is this a bad use of resources? Or is that a bad metaphor?
BL: The web is the biggest platform we’ve ever had. Therefore, it has more constituencies and competing interests than we’ve ever seen. It’s absolutely right that those different interest groups slug it out. At least it’s (mostly) done openly, unlike the decisions made behind closed doors by proprietary organisations answerable to no-one.
SS: We can’t rewrite history to excise XHTML 2.0, but should the two communities work to converge into one somehow? Is that even possible?
BL: I’d like to see one community , but suspect the cultural clashes are too large. So we have to get along, working together mostly and fighting occasionally, just like a family – albeit sometimes most like the Addams Family.
SS: How much actual real-world confusion is there among developers? Where should they go to see what the “true” spec says?
BL: If you want to see what’s already implemented in browsers now, look at W3C spec. If you want to see what might be coming (or how things may change) look at WHATWG spec.
Opera implements following the WHATWG spec, because that’s where nitty-gritty of the leading-edge stuff is discussed. But we also actively support and participate in the W3C as we see the value in having stable snapshots that developers can refer to, and it’s also the forum for many other vital spec discussions about Web Manifest, Device APIs etc. It’s possible to love both and, as we’re Norwegian, our hearts are full of love for all.
Buy "Calling For The Moon", my debut album of songs I wrote while living in Thailand, India, Turkey. (Only £2, on Bandcamp.)
3 Responses to “ On HTML5 vs Living Standard, W3C vs WHATWG ”
“… power is with browser makers …” Well, isn’t that an oversimplification? Like, if you create a “standard” that’s harder to implement (i.e. costs the browser makers more money!) than another solution that might serve the same purpose, wouldn’t it make sense to reach (always!) a convivial agreement prior to setting a standard, then grieving about why it’s not implemented?
Hi Bruce, the situation as to what spec implementers follow is not that clear cut. David Baron from Mozilla stated recently “When the W3C’s and WHATWG’s HTML specifications differ, we tend to follow the WHATWG one.” For example for the implementation of accessibility layer semantics in browsers HTML 5.1 is more up to date and better reflects agreement among browser vendors and is therefore, generally, used. I know this as I test HTML5 accessibility support in browsers, work with implementer accessibility engineers to get agreement and the stuff implemented. Similarly for the implementation of accessibility support for <canvas>, implementers are following the HTML Canvas 2D Context spec. Furthermore, emerging implementer consensus on internationalisation markup (<ruby> and friends) is based on the definitions developed by Robin Berjon in consultation with W3C internationalisation working group and integrated into into HTML5/5.1.
Looking beyond browser implementers; Most popular HTML conformance checkers (e.g. http://validator.w3.org/, http://validator.w3.org/nu/) use the authoring conformance requirements defined in HTML 5.1. [case in point: 1 <main> per document (w3c HTML) versus unlimited (whatwg html)].
Although not of great interest to browser implementers, the W3C HTML spec includes authoring advice and requirements that differ markedly from the whatwg spec. I am well of this as I have made edits, and continue to, after research and consultation with developers and users on the definitions of features (e.g. hgroup – obsolete, cite and blockquote – changed, outline algorithm advice and use of heading elements [based on implementation realities], ARIA in HTML conformance,. The provision of alt text etc.