Chapter 1
Debugging is a fascinating topic no matter what language or platform you're using. It's the only part of software development in which engineers kick, scream at, or even throw their computers. For a normally reticent, introverted group, this degree of emotion is extraordinary. Debugging is also the part of software development that's famous for causing you to pull all-nighters. I've yet to run into an engineer who has called his or her spouse and said, "Honey, I can't come home because we're doing our UML diagrams." However, I've run into plenty of engineers who have called their spouse with the lament, "Honey, I can't come home because we've run into a whopper of a bug."