Some engineers will try just about everything to make a bug (and the user who reported it) go away, except for actually analyzing and fixing the root cause of the bug. Unfortunately, some projects seem to count any contribution to a bug report as a sign of productivity even when it distracts from finding a real resolution and alienates the user. Yes, I have a particular project – and even a particular support person on that project – in mind here, but those who don’t already know who it is will probably recognize the pattern anyway.

  • User My system just exploded. Three people had to be taken to the hospital. The last thing before the explosion was a message in the log from your code that said, “Something’s wrong – about to blow up the system.”
  • Support Guy We need more information to debug this. Please run our diagnostic program which will collect relevant information such as config files, logs, credit card numbers, etc. and then attach the result to this bug report.
  • User I tried to do that, but it said the attachment was too big.
  • Support Guy Yes, it has to be under 5MB even though the program routinely produces output larger than that. And our web server will mangle it if it’s compressed.
  • User I manually edited out a lot of repeated warnings – wow, you guys sure put a lot of spam in my logs – and attached what’s left.
  • Support Guy I see from these logs that one of your servers has a name starting with J. As you know, that’s an invalid configuration. Closing the bug.
  • User I changed the server names and the problem happened again. Fortunately, we had evacuated the room this time before we ran the test. New logs are attached.
  • Support Guy This looks a lot like bug 12345. Closing as a duplicate.
  • User I applied the patched from bug 12345, and it happened again. We lost an intern this time, but that’s OK.
  • Junior Developer Here, try this patch.
  • User It didn’t explode this time, but it did melt down. We have a big hole in our floor, and only one wall left standing.
  • Junior Developer Well, that’s progress. This seems to be another instance of hitting a deadlock, because we ran out of threads to handle requests, and then overreacting when one of those requests times out. This patch should fix the case that you hit (while leaving a thousand others in there and doing nothing to address the fundamentally broken programming approaches that led to them — editor). Senior Developer, could you please review it?
  • Senior Developers #1, #2, and #3 Change the indentation here, use this macro instead of that one, I don’t like the comment.
  • Junior Developer I made all those changes and pretended to run regression tests. Checked in. Say, has anyone heard from the user? His last response was a month ago.
  • Support Guy Nope. Closing as user error. Great job, everyone.