A distribution occupies a very specific niche in the free software ecosystem. Among other things, we need to accept some responsibility for ALL the software defects (“bugs”) that users actually experience across the entire stack. Most users don’t install their apps from upstream source tarballs, they install them from the packages provided by their distribution. So when they experience a bug, they don’t know if it’s a bug introduced by that distribution, or a bug in the underlying upstream code. They don’t know, they don’t care, and they shouldn’t have to. More often than not they will report the issue to their distribution, and the way we respond to it is important, because it represents an opportunity to make the whole ecosystem more robust.

I had a lecturer who was very opposed to the use of the term “bugs”. He said that the term “bug” was a cute-sification for “nasty biting insect”, and similarly, software defects have potentially serious consequences, so we shouldn’t treat them lightly. Bug work is serious work, and it’s one of the most important forms of contribution to the digital commons that Ubuntu can make, so I’d like to salute the extraordinary efforts of the Ubuntu Quality Assurance Team and Bug Squad. Initiatives like five-a-day are already making a huge difference to our users. As Henrik Omma says, effective bug reporting requires a diligent and professional approach, and I’ve noticed a real improvement in our community. Hopefully, we can bring the benefits of that competence to the broader free software ecosystem.

Ubuntu gets as many bugs reported against it as OpenOffice, Mozilla, Gnome, and KDE combined.The vast majority of those bugs are issues that exist in upstream tarball releases, or in Debian. Our primary goals should be to ensure that fixes we produce, and information we generate in the QA process, make their way upstream where they will benefit the broadest cross-section of the community. Separately, we want to ensure that each Ubuntu release ships without major issues, regardless of where those issues originated. We are responsible for the user experience of every line of code, even though we don’t produce every line of code.

In the month of April 2008, I found the following bug counts for large FLOSS projects:

Upstreams:Mozilla5,334

OpenOffice 1,076
Gnome 5,364
KDE 1,335
Total: 13,109
Distributions:
Ubuntu 13,064
Debian 5,103

With hindsight, April was possibly a bad choice, because it was an Ubuntu release month so there’s usually a small spike in the number of bugs filed. It would be interesting to see the stats for other distributions, and projects, over a full year. But the general picture is clear – within our family of distributions, Ubuntu carries the brunt of the load w.r.t. bug tracking, triage and patch management – not only for our users, but for a broad cross-section of the open source stack.

When I delved into the data to see how we do with pushing bugs upstream, I found a somewhat mixed picture. In many cases, we do very well indeed. We have a very good relationship with GNOME, for example, with a very high percentage of bugs appropriately forwarded to the relevant upstream bug tracker. In other projects, it’s harder to make a definitive statement. The percentage varies based on whether the Ubuntu team members have good relationships upstream, or whether there’s a person acting as an ambassador from Ubuntu to upstream (this is a great way to make a difference if you care about a specific application in Ubuntu!) or whether upstream themselves have taken an interest.

We need to improve the tools that support these kinds of cross-project conversations. Launchpad does currently allow us to track the status of a bug in many different bug trackers, and there are quite a few distributions and upstreams that are now either using Launchpad directly or exchanging data efficiently. We’ll keep working to improve the quality of exchange across the whole ecosystem, including those projects that don’t use Launchpad themselves

7 comments:

  1. Srinath Madhavan says: (permalink)
    June 29th, 2008 at 5:58 am

    How come Ubuntu has more than twice the bugs that Debian features? Are you implying that Debian is ineffective in identifying bugs? I find that hard to fathom given Debian’s impeccable stability record.

    Mark Shuttleworth says: These are bugs *reported*. Ubuntu is likely to be the flavour of Debian that has the most users who would consider reporting bugs. So the relative number there has more to do with number of users than anything else, I suspect. Many of the bugs reported in Ubuntu are probably also bugs that need to be reported upstream, or in Debian, so in order to play our role int he community effectively we need to triage the bug and make sure it is reported properly in all the key places.

  2. Jose Hevia says: (permalink)
    June 29th, 2008 at 9:26 am

    Hi Mark, this is my bug report for Mark’s blog:

    1.For the last two days I couldn’t access this page.
    2. If you use this blog using a tablet like screen, you have problems if you try Ctrl+ for seeing big letters in Firefox, inside Ubuntu. Too narrow left text.

  3. Tristan Anderson says: (permalink)
    June 29th, 2008 at 11:29 am

    Hi Mark

    Very interesting post, do you have any information on what happens to the majority of bugs once reported?
    How many get fixed by the ubuntu community or are they simply passed on upstream.

    Can you elaborate on what sort of community management is planned for in future to ensure the bugs are fixed upstream? Yes, it would be simpler if most of the FLOSS community worked on launchpad but honestly, herding cats would be easier. Simply getting all those projects to agree and move in one direction on anything, is a huge challenge.

    Mark Shuttleworth says: Good questions. We’ve been doing some analysis on the flow of bugs, trying to establish whether we are in fact being an effective conduit between users and developers as we’d like to be. And the answer on that front is: mixed. It currently seems to depend very much on whether there’s an Ubuntu developer (Canonical or otherwise) who is in a good position to be a bridge between the communities. The tools only get us so far, and we’ve identified plenty of places where the tools need to get better, too. In terms of the numbers, on average it seems that at least 80% of bugs that are reported relate to issues in the upstream tarballs. Of the remaining 20%, about half are issues that are also present in the Debian package, and about half are things that are specific to Ubuntu. Clearly, we can’t set out to fix every bug, but I think we have improved greatly our ability to identify the issues which *we* introduced, and the most important issues for our users, and we prioritise our work on those.

    As for having everyone use Launchpad, that’s not the idea. I’ve no desire to see everyone using a single platform – no one tools will be best for everyone. So a lot of the ard work in LP is to make it interoperate with other systems. We’ve just funded some plugins for Trac and Bugzilla, for example, that are being beta tested, and which make it easier to exchange information with them using web services. This sort of thing makes it easier to collaborate with a community while still giving full flexibility and choice of tools.

  4. Dejavu « fucking the white bunny rabbit says: (permalink)
    July 2nd, 2008 at 7:31 am

    [...] Dejavu Are you a bit in late? [...]

    Mark Shuttleworth says: I’m not sure what you mean. Ubuntu has from the very beginning had a firm policy of connecting to upstream. I’m not, in this blog, announcing a change in policy, only looking at where we stand and how we’ve done when measured against our own policy. Your comment, and that of Paul Frields, leaves me a little taken aback. Oh well. If that’s your style, you’re welcome to it.

  5. Lettre Hebdomadaire Ubuntu numéro 97 du 22 au 28 juin 2008 « Lettre Hebdomadaire Ubuntu says: (permalink)
    July 5th, 2008 at 10:36 pm

    [...] Le rôle d’Ubuntu dans la gestion des bugs pour tout les groupes de logiciels libres – Selon Mark Shuttleworth, Ubuntu doit accepter d’endosser une part de responsabilité pour tous les bugs qui sont remontés, mais aussi faire partager les corrections que la distribution produit, et de manière générale, améliorer les outils pour traiter les bugs de façon transverse aux différents projets. [...]

  6. Open source still the best way to develop software says: (permalink)
    July 23rd, 2008 at 4:01 pm

    [...] example, in late June, Mark Shuttleworth, Ubuntu Linux’s founder, wrote in his blog that while Ubuntu is doing a good job of finding and fixing bugs both its own Linux distribution [...]

  7. Blog de Bernard Opic » Archives du Blog » Le rôle de Ubuntu dans la gestion des bogues du logiciel libre says: (permalink)
    August 14th, 2008 at 10:59 am

    [...] française de l’article “Ubuntu’s role in bug management for the whole free software stack“. Auteur : Mark Shuttleworth – Traducteur : Bernard [...]