If debugging is the process of removing software bugs, then programming must be the process of putting them in.

It’s hard enough to find an error in your code when you’re looking for it; it’s even harder when you’ve assumed your code is error-free.