The Five Stages of Programming:
1. Denial
"My program doesn't suck, and this isn't my bug."
2. Anger
"You are an asshole for implying my program sucks, you can take this bug report and stuff it up your nose! If you would only use my interfaces properly, this wouldn't be happening."
3. Bargaining
"Look, I don't know where this bug is, but it's in a stupid feature; we cover the 80% use case just fine and the user is never going to use anyway. We should just remove the feature."
4. Depression
"My program is full of bugs and it totally sucks; I suck; everything sucks. I think I'll give up programming and go become a monk in a cave somewhere with no electricity."
5. Acceptance
"Yeah, my program sucks; all programs suck, it's their nature. However, they can still be useful. Let's find and fix the next bug, okay?"