February 25th, 2008
So, um, I don’t do this often, but I could do with some help.
Basically: I am drowning in an unending sea of bugs.
Last year we set up a much better process for handling bugs than we previously had. There is now a proper policy for bugs defining exactly what can, should, and can’t be done to them, in what order, and by whom. This includes a proper triage process, which means that all bug reports are / should be handled by the ‘triage team’ before being passed to the maintainer of the package involved. During this process the triager ensures the bug is one that should properly be handled by the Mandriva bug process (or re-directs it elsewhere if not), ensures that all necessary information to fix the bug is present, and that all the attributes of the bug are set correctly.
I haven’t run any statistical analysis of this yet, but I’m about 95% sure that this process means we’re handling bugs a lot better than we used to. More of them are getting fixed and people are happier with our responses and response times.
So, what’s the problem?
The problem is that it’s eating, on average, about four hours of my life per day.
The way this was envisaged to work was that I would be the Bugmaster – in overall charge of this process, but not actually in charge of *doing it all*. There is a Bug Squad, the members of whom are supposed to make up the triage team, and the plan was for them to do most of the work of actually triaging / wrangling bugs. My role was to be overseeing the whole process, managing the Bug Squad, resolving disputes about the policy and so forth.
In practice, it’s just not happening this way. Aside from the superhuman Pacho Ramos, without whom this whole process would have fallen apart months ago, most of the people who signed up for the Bug Squad just don’t do much or any triaging work.
This isn’t their fault – it’s a volunteer system and anyone will tell you that most volunteer systems have this problem; people sign up from the best intentions and then, for a variety of reasons, many of them just can’t commit to doing the work they originally thought they could. I’m certainly not blaming any of those people for this situation. It just happens.
The problem is that that means, between us, me and Pacho are doing over 90% of the actual triaging work. At this point of the release cycle, bugs change fast. There’s a mailing list where notifications of any significant change to a bug are sent. I basically have to read all of those mails, every day (I have a few tricks for skipping some, but not really many). At present it gets about 250-300 mails a day. I’m averaging something like 50 bug actions per day. This is taking up, as I mentioned at the start, an average of four hours per day. That’s 50% of ‘normal’ working hours, or about 30% of the hours I actually work – a ton of time that I wasn’t envisioned to be spending on this, that could at least in theory be entirely covered by other people, and that I could otherwise be using to write newsletters or invent more stories to try and get into the news about Mandriva or work on packaging or finally merge the Knowledge Base and the Wiki or any of the other fifty dozen things that I just never have time to do.
This is a common problem at Mandriva – ask anyone who works here and they’ll probably be able to tell you at least two or three things they do not because it was really formally planned at any stage that they should do it, but just because someone has to and it doesn’t look like anyone else will. As I wrote on the forums lately, we’re trying to do something (develop a completely independent, full-size, commercial and supported Linux distribution) that most of our competitors use about 3-4x as many resources to do, and that means this kind of situation is sort of inevitable. However, in this case, it’s actually one that doesn’t have to happen. So this is a really long-winded plea for some people to please, please, PLEASE join the bug squad and volunteer a bit of your time to triage and generally herd bugs.
It’s actually a really good thing to volunteer for. It gives you an immediate and visible impact on the process of actually developing the distribution. You can see exactly the consequences of your actions, right away. It gives you a nice warm fuzzy glow when you know you’ve been part of the process of getting someone’s problems fixed, and you often get actual thanks from people just for helping out. It’s also something you don’t need masses of technical knowledge to do. You do need kind of a baseline level of knowledge in order to be able to understand most reports filed and know what information is needed before they can be fixed, and in general as you develop more knowledge you will be able to triage more efficiently, but you can help out even with just moderate experience, and it’s quite easy to learn. It’s not something you need to be a Perl black belt or whatever to do.
It doesn’t need to be a lot of time, either. It’s taking *me* a lot of time but that’s because, as I said, there’s really only two of us working on it. The more people there are, the less time each has to spend. If we really had, say, ten people working on this, it’d only take a half hour or so per day from each person to cover just about every report. That’s not a big time commitment.
So, again, please – if you’re reading this, and you’d like to help out Mandriva, and you have moderate experience with Mandriva and with Linux, please volunteer for the Bug Squad. It’s not too hard and pretty rewarding (I should say “it’s drop-dead easy and super-fun!” but I don’t like to exaggerate, possibly not a good quality in PR :>). You can read how to volunteer on the Bug Squad wiki page. Thanks!