In a recent blog post, Mark Evanier included this quote from Maurice Wilkes, probably taken from his memoir:
By June 1949, people had begun to realize that it was not so easy to get a program right as had at one time appeared. It was on one of my journeys between the EDSAC room and the punching equipment that the realization came over me with full force that a good part of the remainder of my life was going to be spent in finding errors in my own programs.
(Emphasis mine.) Yep. Today, I spent too much time working on a bug that boiled down to something like this: I had a WHERE clause in some SQL that was originally “where X and Y.” I changed it to “where X and Y or Z.” It should have been “where X and (Y or Z).” Stupid parentheses.