Reporting bugs to FOSS projects
Graphic designer Jimmac, whose work you may be familiar with if you use GNOME or the GIMP (amongst others), juxtaposes two approaches to reporting bugs or feature requests: “This blurb has been inspired by a badly formulated feature request on the GIMP mailing list. Quite a contrast to a recent mail to the Inkscape mailing list which has been promptly implemented.”
I am not sure I agree with his conclusion, which seems to be that the reporter needs to do as much work as possible before approaching the poor, overworked developers. For one thing, not every patch gets accepted. For another, sometimes it can be useful to knock an idea about with a couple of like-minded people (not necessarily the developers) before hashing it out.
Unfortunately, the tools with which developers are interacting with users (if I may suggest that a developer/user distinction exists) are often inadequate. The GIMP uses Bugzilla for reporting bugs. Bugzilla is a great tool: I couldn’t imagine life without it. But on the same hand, it has got a far way to go.
- You needed to log in before you can use it
- Logical selections of program and problem categories were not presented first
- Bugzilla did not lock in to other ways of contacting GIMP developers
- Users were barely guided in formulating their bug reports
With regards to the last point: Bugzilla offers any reporter a vast amount of fill-out fields, which by themselves may supply a crude form of feedback. Some users will be helped with this, others will feel daunted. An expert system where users are interviewed may be better.
The PHP bug report database tries to offer something similar by asking you if your report is similar to previously posted reports. That way at least you are guided away from filing duplicate reports which unnecessarily waste everybody’s time.
With regards to the one-but-last point: sometimes support questions turn out to be bug reports or feature requests in disguise. Asking the user to try again, but with a different point of entry needlessly chases already weary users away. A smart point-of-contact system will re-use the information already entered, and channel both the information and the user to the correct sub-system.
(Update: I started writing this entry over a year ago, and see that the Bugzilla team have taken some steps to remedy the above-mentioned problems. For instance, the user now has a choice between a simple and an advanced search form, and Bugzilla is also working on an OpenID plug-in, which should make logging less cumbersome for at least some users.)