On Writing Lists
One of the core practices discussed in Beck's new Test Driven Development is keeping a running list of open issues and concerns for each programming task. Nothing is too small to go on the list. Whenever the next thing to do is not obvious, you grab the most interesting, easy task from the list.
This is also the essence of Allen's Getting Things Done , which uses the same sort of list for planning work and reducing your anxiousness about unclosed loops and forgotten tasks.
It's an interesting convergence -- especially since Allen is emphatically about planning and Beck is notoriously opposed to formally-articulated software planning. The underlying point, I think, is similar: writing things down gets them out of your head, reducing anxiety, and into a task-selection mechanism.