Skip to content

The Art of Good Bug Reports

Good bug reports are like art or great code. Often you can’t say specifically what it is about the piece of art that appeals to you, or what makes a certain piece of code great- but you know them when you see them.

We’ve talked about the importance and the value of good bug reports before:
Great Bug Reports
Feedback Tips
The Importance of Feedback
Or try this Google search: writing good bug reports

It can never be stressed enough that a good bug report is the BEST way to see that your particular bug gets reviewed and action is taken sooner rather than later. Here are a few facts that you should always include in your bug reports:

What kind of project?
There can be bugs that affect only web projects, desktop projects or console projects. Each kind of project utilizes different classes in the IDE, so it’s possible that a bug that occurs in a desktop project may not occur in a web project and vice versa.

Which alpha/beta/release are you using?
If you’re like a lot of people, you have a few versions installed. When you hit a bug it’s pretty important we know which version you were using when you encountered the issue.

What OS/platform?
We work really hard to avoid major differences in Xojo between OS X, Windows and Linux, but it happens. And it is possible a bug that occurs on Linux may not occur on Windows or OS X. It’s important we know what OS and version of that OS you’re using when you encounter your problem.

These first three should really be considered required bits of information for any bug report. Here are a few more tips to make your bug report even stronger:

Did you include steps to reproduce the problem?
If your bug report comes with reproducible steps, the likelihood your bug can and will get fixed goes way up. It’s not a guarantee but it certainly helps us find and isolate what is causing the bug.

Did you include a sample that shows the bug?
This isn’t always possible, but when it is we really appreciate it. Just like writing clear step by step instructions on how to reproduce the bug, this gives us a reproducible way to see it in action, making it much easier to debug and find the problem. When all else fails you can record a video of the steps you take to experience the bug. In some cases crucial details can be easily pointed out in the steps you took to reproduce the issue for the video.

Remember, strong bug reports result in bugs getting identified and fixed faster.