🎉 Celebrating 25 Years of GameDev.net! 🎉

Not many can claim 25 years on the Internet! Join us in celebrating this milestone. Learn more about our history, and thank you for being a part of our community!

How to fix bugs

Published September 15, 1998
Advertisement
Today, I'm a bug-fixin' machine. I spent all morning bringing up all of the games and writing down any bugs that creeped in. Most of the ones I found are related to replacing the bitmap engine. A couple are related to the replaced timer stuff. One I just can't figure out at all :)

Surprisingly, I'm rather enjoying this step. I think it's a bit like editing a novel. After staring at individual pages through a magnifying glass, it's gratifying to step back and look at the entire product as a whole. It's finally coming together, and I can see the finish-line on the horizon.

People seem to have one of two attitudes towards bug-fixing. The first attitude was summed up by one of my former co-workers who became upset whenever I found a bug in his code. He seemed to view bugs as a deficiency in his skills (or his character). He even went so far as to access my computer after hours to cancel an automated stress-test that I was allowing to run over a weekend. I think he cared more about how his coworkers looked upon his coding skills than shipping a bug-free product.

I'm not claiming to be a moral paragon of any kind, but I try to have the second attitude. I really value bug-reports from people, and I try to challenge people to break my code. It's sometimes an ego-blow when someone clobbers something that I thought was perfect, but I know my limits. I know that the stuff I write isn't perfect, and the only way to make it perfect is to let people try to break it.

That being said, here're my rules for working with testers.

  • Be sure to let testers know where the possible trouble-spots are in your program. Let 'em clobber the tough spots.
  • Make a game of it. Challenge your testers to break your code, and gloat when they can't. Allow them to gloat when they've found something.
  • If someone points out something as a "bug", but it's simply that they weren't using a feature properly, you should look very closely at how the feature works. There's a reason they weren't using it correctly --maybe it's not as obvious as you thought.
  • Fix minor stuff like typos immediately. Some people like to bunch 'em up and fix all of the minor stuff at the end, but sometimes fixing a typo leads to unexpected side-effects (like stuff no longer fitting in a dialog-box, requiring you to reformat things).
  • Immortalize your testers in the "about" box. Your product wouldn't be as good as it is without 'em, and they deserve recognition.
Previous Entry wisdom-defying-decisions
Next Entry Unlazy Sundays
0 likes 0 comments

Comments

Nobody has left a comment. You can be the first!
You must log in to join the conversation.
Don't have a GameDev.net account? Sign up!
Advertisement