tantek.com

Why Do CSS Spec Improvements Take So Long?

on (ttk.me b/4801) using BBEdit

Recently my blog was added to the Planet Mozilla aggregator thanks to a nomination from Asa Dotzler. So if you're reading this post over there, hello, and thanks for having me. Be forewarned that not all my posts will be about open web standards - you'll likely see a bunch of personal posts as well. It is my personal blog after all and I do tend to write about whatever is on my mind.

Four months ago I started contracting at Mozilla to work on several standards in the areas of Web Applications UI and Web Identity, as well as reach out to the broader web design and development communities on those same topics.

Rather than provide a broad but shallow list of things done etc., I thought it would be more interesting to take a moment to explore one particular question that I've heard from the community from time to time, not in these exact words, but in general:

Why do CSS spec improvements take so long?

The answer involves quite a few things, but perhaps it is time we start talking about them, maybe even just one or a few at a time.

First and foremost, editing W3C drafts is a royal pain.

Nevermind the process (or typical W3C member costs!) for joining a working group, or (re)chartering a working group, or IP battles, or even the frustrations of getting CVS working with W3C's setup (I'm working on making that less painful, see related resource: W3C CVS For Dummies), all of which contribute to an excessively high barrier to materially participating in the evolution and iteration of W3C specs ( = very few people have the time, money, focus, persistence to do so - I for one am fortunate that Mozilla, with their mission of supporting the Open Web, has hired me to do so, and thus I am able to spend a lot more time on them).

Here are three recent CSS drafts that I've edited as a case study to explore some of the challenges.

For the first two drafts, CSS Style Attributes and CSS3 Color, what's taking so long now is essentially a set of bureaucratic checks and balances. I'm fairly confident they'll be taken care of in days or at most a few weeks.

For CSS3 UI, the problem started because in the previous rechartering of the W3C CSS Working Group, doing work on "user interface" was completely dropped. That means that until the group recharters again, it can't publish any official drafts pertaining to that subject area.

Fortunately, the W3C CSS Working Group discussed rechartering at the recent meeting in Oslo, and decided to re-include "user interface". With any luck the rechartering process will complete relatively soon, and by sometime in November, the groups will be able to officially publish a new draft of CSS3 UI. Until then, you'll have to just keep up with the above-linked unofficial public editor's draft.

And these are just three out of numerous CSS3 drafts in development. Each of which requires a diligent editor (or a few!), familiar with W3C's CVS setup, that regularly updates the editor's draft, and keeps up with emails, issues, etc. related to their draft(s), nevermind figuring out what specific next steps need to be taken to advance the draft(s) along in the W3C's process. It's a lot of work for just a few people, no wonder it takes so long for CSS drafts to make progress!

I hope that sharing some of these details has helped at least provide a better understanding of some of the challenges with pushing standards forward at W3C. I think there's a lot of potential for improvement. For example, the CSS Working Group has been doing a lot to encourage more community participation, e.g. with requests for contributions to test suites to help demonstrate interoperability.

There's probably more that we could do though, with spec-editing, and perhaps with help simplifiying the overall process as well. If you've got suggestions for the CSS Working Group, or W3C in general (e.g. regarding the W3C's processes), perhaps write up a short blog post, and tweet it, referencing @csswg and @w3c respectively.