2018 comes to an end, and so does an exciting year for all KDE bug triagers. Let's recap what we achieved and have a look at what 2019 might have in store.
What is bug triaging, anyway?
The process of determining the most important people or things from amongst a large number that require attention.
This is the official definition for the word "triage" from the Oxford Dictionary, and it actually describes our work very nicely. The idea behind triaging bugs is that developers want to know which problems need the most attention right now.
They also rely on bug reports being complete and up-to-date, which is another important part of bug triaging.
The KDE Bugsquad
Every day, KDE users from around the world report over 35 bugs against one of our programs. That is a large amount of bugs and we needed ways to deal with as many of them as possible. This is the point where the Bugsquad comes into play.
The KDE Bugsquad keeps track of incoming bugs in KDE software, and goes through old bugs. We verify that a bug exists, whether it is reproducible, and that the reporter has given enough information. Our goal is to save developers from doing this, which helps them fix bugs more quickly and do more work on KDE software.
Now that we have a basic understanding of the Bugsquad, let's take a look at what happened in 2018.
Short disclaimer: All these figures are based on the data available until the 22th of December.
In 2018, we managed to resolve 28060 bugs and also crossed the milestone of 300000 resolved bugs on the 16th of July! That means that we theoretically closed more than 75 bugs every day. We can also clearly see a few spikes towards the end of the year. The main reason for these spikes is our new Bug Janitor, which automatically closes stale bugs after a fixed period of time.
Another cause for the jump at the beginning of June was the mass closure of all KDE Plasma 4 bugs, because we do not maintain KDE Plasma 4 any more.
In contrast to the always changing number of resolved bugs, our amount of open bugs stays surprisingly constant. The impact of the Bug Janitor is again clearly visible.
An important way of checking the health of a bug reporting platform is the amount of unconfirmed bugs. In an ideal world, this amount would always be very close to zero, as new bugs should immediately get picked up by bug triagers and in the end be confirmed or closed.
In KDE, we sadly have not managed to achieve this goal just yet. On a brighter note, we were able to keep the number of unconfirmed bugs about constant, despite the fact that 12839 new bugs were filed in 2018.
- Only 8 out of the 50 products that have the most open bugs actually had more bugs at the end of the year than at the beginning
- 30 individual contributors closed more than 100 bugs this year (the Bug Janitor excluded)
- Konqueror is the software with the most open bugs
- Plasmashell had the most new bugs reported in 2018, with a close second place being Krita
- The quickest fix for a bug was from Thomas Baumgart with 47 seconds between opening the bug and commiting the fix (but he reported the bug himself)
- The quickest fix for a bug that was not reported by the person who fixed it was from Boudewijn Rempt with a time of 2 minutes and 30 seconds
Bug triaging days
In 2018, we also resurrected the concept of "bug triaging days". The idea is simple: if 10 people look at 10 bugs each, we can triage 100 bugs quickly within a single day. Such events are also a good way to get new people involved with KDE!
2018 was an impressive year for the Bugsquad, but we won't stop here. Here is my personal wishlist/list of goals for 2019:
- Get the amount of unconfirmed bugs down to 5000
- Hold more bug triaging events, and always triage at least 30 bugs overall per session
- Ensure that all bug triaging material on the wiki is updated and easy to understand
- Try to set up a system such that all ~35 new bugs that get reported every day get looked at by at least one triager during the next three days
- Encourage people who had a bad experience with our bug reporting system to report bugs again