Having your own mistake pointed out to you is extremely embarrassing. There are three possible programmer reactions:
- Programmer gets a sick feeling and immediately tries to fix the problem . . . perhaps even before fixing the process that made the mistake in the first place.
- Programmer takes a look at how the mistake got in the code and modifies the process to keep it from happening in the future.
- Programmer denies responsibility for the mistake and chalks it up to 'bad requirements'.
The thing is, number 1 is just as unhealthy to the long term as number 3. That's the preaching of Demming
, fix what's causing the problem, not just the problem itself.
So, to be more specific, point out what went wrong, what you wanted to happen, and take time together to go over the requirements again to make sure that they are clearly understood. Make a better 'beta' process and don't rely solely on the person who wrote the code to tell you whether or not it works. Users are more creatively stupid than programmers, you have to let them practice THEIR expertise :)
I hope that wasn't too far off-topic.