Writing software is hard. If the guy next to you hasn’t created ten new bugs, management hasn’t added 10 new features, the customer hasn’t tightened the due date by a week, and your technical lead hasn’t passed a new programming commandment (“Thou shalt not use identifiers with fewer than 4 characters!”) – all by noon – then it’s a good day in Developerstan.
Writing software is hard enough just dealing with the practical, every-day, mundane bits without even having to think about the difficulty added by the actual technical work itself. To write really good, clean, correct code, the programmer has to have a million tiny things in his head – “What does
Integer.parseInt() throw if it fails?” “Which directory is
ServletContext.getResourceAsStream() relative to?” “Which language is this product in again?” – before he can even write a single line of code. And the really good programmer has to check all his assumptions and return codes before he can even get down to business.
Wouldn’t it be nice if your tools yelled at you when you miss something?
I was setting up my SIGPWNED emails to forward to my GMail accounts. I thought I had the forwards configured properly, but my test emails never came through, so I thought that GMail might be flagging my SIGPWNED messages as spam. To rule out that possibility, I thought I’d install a “not spam” filter to make sure the emails got through the spam filter and into my inbox. Imagine my surprise when I found that GMail defines no such filter type: