Why does Launchpad have 300 critical bugs?

A chip upturned, looking like a dead bug

What does “critical” mean? And how is it that the number of critical Launchpad bugs has leapt up to almost 300?

Until January, we reserved the critical importance for near-disastrous issues such as data loss; stuff that just about never happens.

This was fine except that it didn’t fully reflect what we in the Launchpad team consider to be really important. So now we also use critical for bugs where:

  • there’s a crash: you see one of Launchpad’s oops reports and can’t do what you wanted
  • a timeout occurs: Launchpad takes so long to do what you asked that our timeout system kicks in to prevent rogue requests from sapping resources
  • a supported browser can’t run Launchpad’s Javascript
  • there’s a regression: we accidentally break an existing feature.

The principle here is: just as Launchpad should never lose your data, nor should it stop you from doing something because of poor engineering.

So, our critical bug count has shot up to around 270 because we’ve expanded what we consider to be critical.

Another reason is that we’re getting tougher on timeouts. Obviously we don’t want Launchpad pages to be so slow that they time out.

So, over the past nine months we’ve repeatedly lowered our timeout limit, meaning that we uncover more and more slow-loading pages. Each time a new page hits the timeout limit, we report a new critical bug and work to fix it. We don’t lower the timeout again until we have the failure rate below 0.01% of requests.

Our aim is to have zero critical bugs at any time. Once we get there, Launchpad will have no oopses and no timeouts. People are already talking about how Launchpad is faster to use and that’s largely thanks to the performance effort that our Technical Architect, Rob Collins, has been driving. There’ll be more about this performance work in coming blog posts.

If there’s a down-side to this focus on critical bugs it’s this: the bug that’s important to you may not get fixed as quickly as you’d like. This isn’t because we don’t consider such bugs important but because we’ve decided that the most important bugs are those that stop you dead in your tracks.

If you’re interested in following the performance effort, or the work to tackle these critical bugs, join the launchpad-dev mailing list.

Thanks to Rob Collins for his help with this post.

Photo by Brian Searle. Licence: CC-BY.

3 Responses to “Why does Launchpad have 300 critical bugs?”

  1. Launchpad Blog Says:

    [...] the other distinctions  between High, Medium and Low at this point are  moot until we clear the backlog of such issues (see my status post to see how we are doing there). That’s not to say that we don’t fix [...]

  2. Launchpad Blog Says:

    [...] has a lot of critical bugs. A month ago, we had close to 300 of them. At the time of writing, we have [...]

  3. Launchpad Blog Says:

    [...] are well aware that development is slower than it could be, that we have a lot of tech-debt and a big pile of Critical bugs, not to mention the hundreds of things that we know we could do to make Launchpad more compelling. [...]

Leave a Reply