Most people who report bugs on it hardly ever visit it, and that's not a bad thing.
Some people who do end up there are frustrated due to some problem they ran into and so show up a little less than happy. Most are congenial, however, which is nice.
Unfortunately, there's still that familiarity gap. I have built up over the years a set of internal expectations around handling the bug system that I know are completely non-obvious to anyone who doesn't use bugs.kde.org often .. which is most of our reporters .. which leads to frustration. Everyone couple years I blog about this frustration. This one of those blogs.
Sometimes I honestly think a "bugs.kde.org driver's test" should be a prerequisite to using the system. It would go miles to improving the quality of the reports. In lieu of that, here are some quicky notes on handling bugs.kde.org:
- Always include the version of KDE you are using. If you build from svn, then include the svn revision #. Otherwise, `kde4-config --version` is perfect.
- If reporting a crash, provide a detailed description of what led to the crash. If reporting a functionality bug, describe the steps in detail needed to reproduce the problem. If you don't know, just describe as much as you can about what you or the machine was doing at the time. These descriptions help us replicate your experience which is critical to solving many reported problems.
- If you are reporting a crash, always include a backtrace. If it has lots of "unknown symbols" in it, though, it's not likely to be very useful and your description of how to reproduce will be even more important. However, first consider reading this how-to on creating nice backtraces and get a realy good backtrace for the report.
- Do not upload backtraces as attachments to reports! Instead paste them into a comment. This lets us easily search the database for similar backtraces. It's easy to search through comments in Bugzilla, not so much so through random attachments.
- If the bug is rendering related, include what the graphics hardware and driver version is. It may not be relevant, but it often is and will save a "what's your graphics hardware?" roundtrip question.
- If the bug has a visual manifestation (e.g. you can see the bug itself or symptoms of it somewhere on the screen) consider taking a screenshot of it and attaching it to the report. Screenshots are often very, very useful to understanding bug reports. Pictures and a thousand words and all that.
- If you can't reproduce the bug after a while, let us know. That's useful information.
- If we ask for more information, try and respond as soon as you can. Some bugs are easier to fix at certain times than others, for various reasons. Helping us by being attentive is much appreciated. If you can't get to it right away, or if you feel the answer you have isn't a good one (e.g. you tried what was requested, and nothing happened) still report back with either a "I'll get to it when I can" or "I tried it and got nothing useful back". At least this way we know you're still there.
- Do not post to random bug reports unless your problem is the exact one in the original report. If you have a crash and your backtrace does not look identical at the top of it to the one in the report, do not add it to an existing report. If you have a similar sounding but not identical problem, do not add it to an existing report. File new reports. Bugzilla lets us merge reports, but it does not let us take a single comment and break it out into its own report. I wish it did, but it doesn't. Yes, this is a shortcoming in Bugzilla, but it's one we have to live with. This means that if you just pile in new bugs into old reports, we end up with reports that are completely unmanageable. Eventually, I just end up closing those kinds of ruined reports and make everyone file new ones.
- Which leads to: one problem per report. Yes, Bugzilla is not the fastest tool to use and so it can be tempting to just pile in 2, 3, 5 or sometimes even more issues into the same report. Don't. It becomes very hard to track which issues are fixed and which aren't. Again, this is mostly due to shortcomings in Bugzilla, but it's the reality we deal with. File separate reports for separate issues; and yes, even if it's two different issues on the same topic. ;)
- Whenever you comment on a bug, the assignee(s) and the people on the CC list get an email with your comment in it ... even if the report is closed. So feel free to add comments to reports, someone somewhere will still get a notice of them.
- Fixes will not appear immediately on your computer. You will need to wait until you update your installation to a version that contains that fix. Depending on when the fix is made and how you install KDE, this can even be many months time. This may sound like an obvious item, but many people seem rather surprised when I mark something as fixed with a commit to svn but the problem is still there on their computer.
- Describe your problems thoroughly, but don't get too clever unless you've actually read the code. Way too often I get reports where the person has a pet theory about why something is happening and unfortunately the theory is dead wrong. At best it's just a waste of my time reading that part of the report, but more often it ends up confusing the report with some misinformation and worst case (which happens too often) the reporter gets so caught up in their idea of why the bug is happening that they end up describing that theoretical problem as opposed to what is actually happening. This risks confusing the bug triager, and often just means a long series of back and forth questions. If at all in doubt, just describe the problem as it manifests itself as thoroughly as possible. Leave the root-cause sleuthing to those with the code in front of them.
- You don't have to suggest a solution. It is perfectly Ok to say "This doesn't work for me." and leave it at that. If there is a preferred way you'd like to see it happen, describe it in those terms: "I would prefer if ..". But as the reporter you don't have to come up with a solution.
- I hate the term "wishlist" because it makes it sound like something you'd like to have but probably won't get. I far prefer the term "feature request" because that's what it really is, and "feature request" lacks all the implications of "wishlist". Some people get really annoyed when I mark their report as "wishlist" and in one sense I don't blame them; if you didn't know any better it might sound like your report has just been brushed off. That's not the case, however: if the request is for a new feature or new functionality, as opposed to fixing existing functionality, it's a feature request not a defect report.
- Don't bother overstating the severity of your bug. It won't fool anyone. Seriously. =)
- Don't bother linking to your favourite bug report from your blog, on web forums, on irc, etc hoping people will vote for it. When I see a bunch of people randomly showing up to vote on a report, I assume this is what has happened and ignore those votes. Such vote canvasing only distorts the statistical distribution of voting on bugs.kde.org and makes it impossible to distinguish between reports people actually, really want fixed and ones that someone has just done an effective job of campaigning for in online forums. ;) In general, I put far more weight behind how many duplicates a report has than votes.
- When it comes to feature requests, a judgment call is often required. That call belongs to the person(s) designing the software. If they decide against a feature, don't belabor the point by endlessly trying to convince them or getting angry with them. It doesn't help anything.
- Saying thank-you even once makes up for 10 mistakes made elsewhere. It's really encouraging when a reporter is civil, cordial and says "thanks" when the fix goes in. Dealing with reports on bugzilla is, quite frankly, not the sexiest thing in the world to do, so anything that makes it go a little easier and nicer helps.
Probably not an exhaustive list, but there you go. Hopefully something in that list is useful to someone out there at some point in the future. =)

29 comments:
Nice list!
I agree with you, dealing with bugzilla is not the sexiest thing in the world to do, but there is hope: it seems Aza Raskin is working with Bugzilla devs
to make Bugzilla "more social" :)
Really nice, too bad I don't remember getting information like this on bugs.kde.org(I could be wrong), and it really isn't easy figuring out all this.
I agree that more of this info should be present when you are posting the bug. I posted a bug just this morning and was wondering whether something like 'kde4-config --version' exists.. Is there a way to find versions of specific components in case a program crashes at start and you can't get to the 'about' menu?
"In general, I put far more weight behind how many duplicates a report has than votes."
I have a feeling you may reget saying that. You just gave people an incentive to post duplicates!
@GregC most (all?) kde applications will tell you the version if you use the -v (or --version) option. This doesn't launch the app for real so is unlikely to crash unless things are screwed for a reason like bad packages.
we should have a short, educational video on bugs.kde.org showing people this in an easy-to-understand, friendly manner. :)
I think the 'Help->Report bug' menu should be brought under the attention, for example by adding some screenshots at bugs.kde.org.
It could also use some improvement, to select the right component faster.
I'm always using this route to report bugs because everything is filled in (i'd be annoyed to do that each time otherwise).
I'd also vote to have a "Report crash" button at the crash dialog, which allows you to enter what you did and submit it.
Both things would make the barrier to report good bugs a little lower.
I agree with Erlend. I video-cast of making a bug report would be nice.
See also:
http://www.chiark.greenend.org.uk/~sgtatham/bugs.html
I only recently started reporting bugs and quite frankly the whole interface is far from friendly.
Not only it is hard to find the bug report section on kde.org (heard something about a redesign, is this true?) but also the form to fill in a bug is too long and confusing...
I also think that if a few of these suggestions/changes were implemented on bugzilla it would help.
For instance when you are reporting a new bug and try to select a version, you only have 4.1.3 and "Recent SVN or snapshot version". Why not "KDE 4.2 Beta 2"?
Maybe you could also be prompted for the exact version.
Same with distributions. Why not add kde4daily? SuSE is still there, and they changed the name to openSUSE long time ago.
I think the problem is most suggestions could be added to the workflow, but I understand the problem probably is the difficulty of doing that with bugzilla.
good to hear about Aza and bugzilla; and the suggestions made all sound really good.
as IAnjo notes though, bugzilla does not make implementing some of these things easy. Matt Rogers has been doing a great job of wrestling Bugzilla into shape though, so if you'd like to help out give him a holler. =)
A screencast is a pretty good idea, too.
I agree to most of your statements, and they make sense, but when it comes to dealing with not exact similar bugs, and duplicates, i get a bit confused.
As normal user you can not always be sure if the bug you have is the same, so you have two possibilities:
1. File a new bug, and get a rant because you did not search for duplicates.
2. Attach your comment to the bug you think its the same, and get a rant that its not the same bug.
Its not as easy as you write that, although it would be perfect if it would be that easy.
Thanks a lot! I was actually looking for something like that some time ago before sending in a few bug reports.
@fgunni: if you're unsure about whether it's a duplicate, maybe mention the similar bug # in the new report? then nobody can say you haven't looked for duplicates, and if it does turn out to be the same you've saved them a bit of searching :)
Yeah, a duplicate is usually less of a problem than an off-topic comment in an unrelated bug, it's quickly closed, especially if you provide the link to the bug it may be a duplicate of. And the closed bug can even be reopened if it later turns out it was not a duplicate after all (which does happen, even the developers are not always sure).
As for this part:
Fixes will not appear immediately on your computer. You will need to wait until you update your installation to a version that contains that fix. Depending on when the fix is made and how you install KDE, this can even be many months time. This may sound like an obvious item, but many people seem rather surprised when I mark something as fixed with a commit to svn but the problem is still there on their computer.
I'll add that if you (the same "you" as in Aaron's post, i.e. users) are using a "supported" version of Fedora ("supported" in the sense that it still gets updates, which currently means Fedora 9 or 10 - no, Fedora 8 is no longer updated as of today!), if there's a fix which got committed to KDE and you think it needs to urgently get backported to the current Fedora packages, please file a bug at the Red Hat Bugzilla (or reopen it if you already filed it there and it got closed UPSTREAM), we can push out an update with the fix.
Please note, however, that we do push new KDE releases as updates, so it only makes sense to backport a fix if it can't wait for the next KDE bugfix release. So please don't bother asking to backport unimportant fixes (e.g. some rendering fix which does not affect usability) from the release branch when the next release is less than a month away and will get pushed anyway, you'd just waste our time. ;-)
Some distributions are much more conservative with their updates. If you aren't getting your bugs fixed in a reasonable time, you may want to consider using a less conservative distribution.
There's another side of things:
- Do not flame a bug submitter for messing up some of Bugzilla's ten thousand options. Here's a suggestion for a response: "Thanks for the bug report. I took the liberty of moving this to module XXX where Xxx Xxxx will have a closer look at this issue."
- Do not flame a submitter for posting duplicate bug report. A simple "Thanks for the bug report. Others have already reported this issue, please see bug #xx." will do jsut fine.
- Do not close bug report with an arrogant WONTFIX. Instead try with: "Thanks for the bug report. This behaviour is intentional, I'm closing this bug as WONTFIX for now. Please re-open if you would like to discuss this further."
I'm sure there's plenty more of good advice to the administrators/triagers/etc of various bugtrackers, but these were just from the top of my head.
Thanks for the tips, Aaron! One question: when you mention that feature requests are up to the person designing the software, who is that exactly? For instance, if a user has an idea for an improvement to the File, Edit, View, ... menus (in all of KDE, not one particular app) then who is responsible for making that decision?
@dotancohen: "when you mention that feature requests are up to the person designing the software, who is that exactly?"
the varies from project to project within KDE.
in plasma, i maintain the big picture and core design. some of the individual components, however, are under the coordination of others as maintainers.
the plasma team (developers and artists) as a whole tend to discuss many of the bigger decisions and come to an understanding and consensus.
user input is often considered and an important part of the process.
however, plasma is not designed *by* users. the design is influenced by user participation, but that's quite a different thing. someone who is not a developer can not come and say "you will now do this."
some users are of the mistaken opinion that they are the boss and the dev team is their personal software house as if we were under contract to them or something.
it's much more cooperative and participatory than that. unfortunately, sometimes people get really pissy when their request is not headed due to this concept that the user gets to design the software.
those doing the work get to decide, ultimately. and not everyone can be made happy; for any given feature or design decision we usually have users on all sides of the topic and there is absolutely no way to make everyone happy. therefore we try and do what makes the most sense for the overall design and goals of the sotware project itself.
@abrander: do you triage bugs on bugs.kde.org?
@Aaron: Nope, my only involvement with KDE is reading planetkde.org :) Why do you ask?
(But I'm administering another Bugzilla installation if that's relevant)
@abrander: i'm always looking for people who can help others who are working triage on b.k.o and need assistance dealing with bugs. thought you might be available.
if you're ever looking for more triaging fun, ... b.k.o is chock full of it ;)
I was just thinking how nice would a screencast like this http://www.youtube.com/watch?v=uj0mtxXEGE8 be on b.k.o....
On the subject of KDE version. For a user to get the version number I only know of it available under Konquers help pulldown.
It would be a nice touch for KDE to provide its version number in a not so hidden place, perhaps in the start menu, or in the desktop's right click menu
Thanks, Aaron, I was specifically referring to situations like seen in this bug:
http://bugs.kde.org/show_bug.cgi?id=169043
In that bug two users requested a feature, and it bug was closed because "we are not interested in that feature". Who is 'we'? At least two users are interested in the feature, no argument against the feature had been made other than "it is against the HIG" (lots of KDE software, such as Dolphin, break the outdated HIG), and other popular software does have this feature.
@David: it's in the Help menu of every KDE application. i think it would make sense to show this in system settings as well. i'm really not sure devoting a context menu entry to it in the desktop shell is worthwhile.
@dotancohen: "In that bug two users requested a feature,"
which doesn't automatically make it something that will or even should be implemented. it just means that some people are interested in it.
"and it bug was closed because "we are not interested in that feature". Who is 'we'?"
'we' refers to the people designing and writing the software. the 'we' ends to do so with our users in mind, but the individual users rarely have perspective on what "our users" actually means (completely understandable; how can they?) and the desires of a few do not change the design goals.
for an absurd example, no matter how many people asked for plasma to provide an ascii-only mode so you could replace a linux term with plasma driven widgets, i still wouldn't do it. it doesn't match the design goals at all and would just cause all sorts of undesired issues if implemented.
It's not the value of the report it's the value of the effort, if someone tries to request a feature and report a bug, he should at least get a polite and sane reason for the WONTFIX. I think if you report a bug, you deserve a why not instead of just a not.
Maybe it would be really good if this text gets some space on http://techbase.kde.org/Development/Tutorials#Testing_And_Debugging, or maybe at the index in bugs.kde.org, like a must-read-before-start.
At least that way you make sure that everybody will follow a set of rules, and if they don't you can just dismiss them with a note sending them to read the post. :)
Post a Comment