I made up this quote but its true nevertheless. No software is bug free. Many problems only show up in certain circumstances and in order to fix them it is extremely helpful to the developer if they can reproduce the bug. A good bug report goes a long way towards rapidly improving software quality.
Simon Tatham nicely described what it means to Report bugs effectively. The upshot is this:
- List software version.
- List operating system version and hardware architecture.
- Describe what you were doing.
- What did you expect to happen?
- What did actually happen?
- Attach program output that indicates the error.
- Is the problem reproducible?
- If possible describe how to recreate the problem.