Yesterday Bracken wrote about how a Dropbox user was rewarded for submitting a detailed bug report to the company. This got me thinking about how much I appreciate it when users do a great job of telling me about a problem they find with software I've built. When a bug report is detailed and informative, that makes solving the problem much easier and everyone wins. I'm pretty sure that most people don't really understand what makes a good bug report, so in this post I'm going to explain exactly what you can do as a user to make the bug-fixing process as fast and smooth as possible. First, a few random thoughts:
- There's no such thing as bug-free software. We try to make the software as solid as possible, but there will be bugs from time to time, and everyone (users and developers) should be aware of that.
- If you run into a bug, don't assume the company already knows about it. If everyone assumes someone else will submit the bug, then the company will never end up hearing about it and it never gets fixed.
- Sorry if I sound entitled or demanding in this post. I don't mean to imply that you have an obligation to submit bug reports. Obviously bugs are the company's problem, not yours, but I'm just trying to explain how you can do the company an awesome favor if you're so inclined. It's absolutely your right to ignore bugs and go about your business.
What should you include in your bug report?
Ok, so what makes a great bug report? The two main things that programmers want you to explain when reporting a problem are what is the problem and how can I recreate the problem. If we can't see the bug for ourselves, there's virtually no chance that we can fix it. With that in mind, if you're interested in getting your problem solved as fast as possible, here are some things we'd like to learn from your bug report:
- Who are you? Sometimes users send us emails from addresses we don't know about and they don't state their full names. If the problem is specific to your account, we've got no chance of solving it without knowing who you are.
- What are you trying to accomplish? We need to be able to narrow down exactly where the bug is occurring. Emails that say "the website isn't working" aren't very helpful (unless the entire website is in fact down). It helps us so much to know exactly what you're trying to do that isn't working (logging in, importing data, etc.). The more details, the better.
- In what way is the software failing? Let's say you're trying to log in and it isn't working. Does that mean you're seeing an error message? Maybe the form is forwarding you to a blank page. Maybe nothing happens at all when you click the button. It helps us to know the exact behavior you're seeing when the problem occurs.
- What web browser are you using? Every web browser has different quirks, and most bugs only show up in one browser. If you're not sure which browser you're using, this site will tell you.
- What is the URL of the web page you're on? Sometimes bugs will only occur under weird scenarios. We can find the bug much faster if you link us directly to the page you're on. Just copy the URL from the address bar in your browser, and include that in the bug report.
- Do we need to do anything special to recreate the bug? If the bug only happens after you perform a specific series of actions, that's great information for us to know. We want to know what links you clicked, what buttons you pressed, what information you entered, etc. that caused the bug to occur.
- Do you have a screenshot? If you really feel like going above and beyond, take a screenshot of your computer screen and send us the image. That way we can see exactly what you're seeing so there's no confusion about what's going wrong.
If you submit a bug report with all (or even most) of that information, you'll be a programmer's best friend. These details could potentially turn a full-day project into a five minute fix which means you get working software sooner, the programmer doesn't hate life (fixing bugs is the worst part of the job), and the programmer can spend more time working on new features for you instead of fixing old ones. It's really a win-win-win.
I hope you found this helpful. As a bonus, here's an example bug report I wrote up about a problem I'm having with Gmail. This provides all the information they should need to fix the problem quickly and easily:
I'm running into a problem when I try to set up email delegation in my Google Apps account. After logging in, I navigate to https://mail.google.com/a/lessannoyingsoftware.com/#settings/accounts by clicking "Settings > Accounts > Grant access to your account > Add another account" but when I click on that link, it pops up a blank window.
I've tried this from my normal gmail account (redacted) and it worked fine (i.e. the window isn't blank), but it's not working in any of the three Google Apps accounts I've tried (redacted, redacted, redacted). I've tried this using Chrome 8.0.x, Firefox, and IE7 and they all have the same problem. I'm using Windows XP.
I've attached a screen shot [make sure you actually do!].
Let me know if you need any other information. Thanks for the help.