Saturday, August 23
a notes.txt / TODO file format
These days, I try to abstain from the cult of personal productivity systems the same way I avoid software methodology and exercise programs. Then again, I'm a little bit fascinated by the stuff all the same, and I do find some consistent utility in keeping checklists. I figured I'd document my system for that, such as it is.
I keep a lot of notes on paper. For stuff I want to do, I make lists with little square checkboxes next to invidual items. If I get something done, I put a checkbox in. If I move the item to another list, I draw a little circle in the box. If I decide it doesn't need done any more, I draw a line through the whole list item. At work I keep these under my keyboard on the biggest piece of printer paper I can find. Elsewhere I've usually got a notebook going. Every once in a while I go through the last couple sheets of paper and the most recent notebook, and make sure everything gets marked done, not-needed, or moved.
(I used to use index cards for this kind of thing, but I think I've realized that having hundreds of tiny unbound pieces of paper floating around is a good way to lose pieces of paper which contain useful information. Bookbinding is a really beautiful technology just on the pure pragmatics of the thing and should be warmly embraced.)
It's pretty easy to do the same thing with text files. Here's the format I use:
This is a general notes / scratch area. TODO ---- [ ] first thing [ ] second thing [x] a finished thing [ ] some other thing with sub-tasks - a note that isn't exactly a task - some other note [ ] a subtask [ ] another subtask [x] a finished subtask a whole section for something else ---------------------------------- [ ] etc. done ---- [x] completed thing [x] other completed thing
I tend to have the stuff I'm working on right now up near the top. Once I
don't need things to keep track of where I'm at in an ongoing project, I move
them to the "done" section at the bottom. I keep a notes.txt like this in
/home/brennen/notes/
, which is also a good place to stash random
work-in-progress files. A while ago I decided to keep this directory in git
and make commits once in a while, which turns out to be cool because you can
run git blame
and see roughly when an item last changed.
If I were after more of a Proper System, I'd probably use a database, but I'm not really after metrics or scorekeeping or whatever. I'm just augmenting a really bad working memory.