This week has been one of those weeks where I just can't seem to get anything done. Granted, Mondays are pretty much a lost cause anyway, but as much as I tried to be productive today, it just didn't happen. I didn't even have meetings preventing me from accomplishing things today like I usually do. I just couldn't get in the zone.
Whenever I get in a mood like this I tend to remember one of the better essays I've ever read, titled Fire and Motion, by Joel Spolsky. It contains some of the best advice that you can give a developer or anyone else whose job performance depends on creative output.
"But it's not the days when I 'only' get two hours of work done that worry me. It's the days when I can't do anything. [...] You have to have time on your side, and you have to move forward every day. Sooner or later you will win."
You can't completely control when you're productive and when you're not. As long as you're always making progress, things will even out, and the good days will have to make up for the bad ones.
When I worked at Burger King, it didn't matter if I was having a good day or not. I could easily pretend to be having one, and ultimately my productivity was not really affected all that much. Same with being a grocery cashier. Same with working in the deli. A better day's always better than a worse day (um, by definition, really), but the impact on your performance is far, far lower. And, even if one day was bad, it wouldn't cause the next day's stress level to be notably higher or my morale to be notably lower. Now it does matter. I just have to remember that it's unavoidable, that I'll make up for it when I'm having a better day, and that ultimately I'm going to build something that kicks ass and it's not going to matter that pretty much nothing got done on November 13, 2007.