David Baron's weblog: October 2007

Friends & Colleagues

Wednesday 2007-10-31

I'm not working on bug 915, and why that's a good thing (13:43 -0700)

Earlier today, Henrik Gemal posted a factually incorrect (or at least very misleading) blog entry suggesting that I was working on bug 915 (implementing HTML's rules for inheritance of presentational attributes from table columns). I don't have time right now to discuss the chain of events that led to this (or why they shouldn't have happened in the first place), but I want to briefly address one point of disagreement.

Henrik saw work on this bug (which didn't really exist) as a good thing. Yet a number of my colleagues saw this as a problem, and I agree with my colleagues who see this as bad. It's bad because we're past the point in the development of Firefox 3 where we should be fixing bugs that aren't regressions from the previous release. We've fixed a lot already, and implemented a bunch of new features, and it's past time to ship all the work we've done to our users (and then move on to fixing more in the next release). In order to do this, we need to fix the bugs caused by the work that we've already done that get in the way of Firefox being used by millions of people to browse the Web and that get in the way of Web developers writing pages that work for our users.

Some of these bugs are mistakes in code that was written so far for Firefox 3. Some are the results of assumptions that turned out to be incorrect (for example, that an external library we depend on did some task correctly or quickly enough). Some are the result of Web pages that depend on behavior not documented in any Web standards that we inadvertently changed in the process of fixing other bugs. Some of the result of Web pages that depend on behavior that is actually incorrect, but that we still need to have (maybe only in quirks mode) in order to display the Web pages that our users want to display. Some are other things.

So in order to get the work we've already done into the hands of our users and of Web developers, we need to fix these regressions (or at least the important ones among them). That's not necessarily the fun or interesting part of developing browsers, but it's necessary. Henrik's report implied that I wasn't doing my fair share of this work, but was instead being greedy and trying to cram more new features into a release that's no longer accepting them so that we can all get the work we've done released to the world. This is why my colleagues were rightly upset to read this untrue report.