Five bugs in five minutes...

I have a game I play with programmers. I call it five bugs in five minutes. It's been I while since I've done it (you have to be sitting close to the people doing the programming), but I still get to play it every now and then.

The game works like this:

  1. A programmer finishes coding some testable unit of work

  2. The programmer comes over and throws down the testing gauntlet

  3. You go over to the programmers desk and they launch the software you will be testing, navigating to the code that is supposedly "done", and establishes the limits to the software they are presenting you with

  4. You accept or you decline the challenge (noting that declining lowers your project "street credit")

  5. If you accept, you test for five minutes with the programmer looking over your shoulder

  6. Every time you find a bug, you laugh sadistically and tell the programmer the bug you found

  7. The programmer (and this is important) confirms or denies that what you found counts as a bug

  8. After five minutes you stop

  9. If you found five bugs (that the programmer confirms are bugs), the programmer pays you five dollars (or buys you lunch)

  10. If you fail to find five bugs (that the programmer confirms are bugs), you pay the programmer five dollars (or buy them lunch)

I find that this game has the following side effects:

  • Over time, I get more free lunches then I give

  • Over time, I developer better communication with the programmers; they become more willing to help me, and they become more interested in fixing my bugs

  • Over time, the programmers get better at preventing the types of bugs I find - forcing me to change my test techniques and raise the bar of my testing

  • Over longer periods of time with the same developers, I start to give more free lunches then I get

It allows both of us to grow in a fun little competitive way.