When you start publishing free software, and gain users, you will inevitably receive some bug reports. This is a good thing. It means other people care about your software enough to tell you when they have a problem.

If you're lucky, your user is reporting a bug that is easily reproduced, and is an actual bug, and you can quickly find and fix the problem. Your user will be very pleasantly suprised to find the fix and the new release when they wake up in the morning, after you've spent the evening dealing with the bug report.

Sometimes, however, things don't go smoothly.

  • The bug report might be very unclear, or even wrong.
  • It might be difficult to reproduce the problem (if you can't reproduce it, how do you know you've fixed it?).
  • The user might be very hostile. They wanted to use your program so much to achieve some goal they have, and your program failed to help them, and this frustrates them a lot, and they take it out on you.
  • You might be busy with other things, and not have time to deal with a bug report.
  • The bug might be really hard to fix.

Bug reports are, more than anything, about dealing with people. The key to dealing with people is clear, courteous, and prompt communication. If you don't have time to fix the problem, or you need more information, respond as soon as you can. If people know you're busy, they're happier to wait than if they hear nothing.

  • Respond quickly, even if it is just to say you're busy and will have a closer look as soon as you can.
  • Be courteous, even in the face of provocation.
  • If you need more information, be as clear as possible about what you want and how they can get the information you need.

If you get a lot of bug reports, you may want to set up a bug tracking system of some sort. There are lots to choose from. As long as you and your users are happy to use it, it doesn't matter what you choose. However, you may want to wait until the volume of bugs warrants the extra complexity of a tracking system. Or not. Experiment and see what you like.

If you get a lot of users, but few co-developers, you may end up in a situation where new bugs are reported faster than you can deal with them. This is not a good situation to be in. There are a few things you can do:

  • Raise the quality of your software. Have fewer reasons for people to report bugs.
  • Get people to help you, even if it's just triaging the incoming bug reports.
  • Let the bug reports pile up and ignore them and do something else instead.

Various projects have, over time, done one or more of the above. Sometimes the situation becomes better, sometimes it gets even worse. Don't get into this state. Stay on top of your incoming flow of bug reports.

On the other hand, if you do deal with bugs well enough, it is a constant source of pleasant interaction with people who use your software and like it, and you, enough to report problems in it.