Benad's Web Site

Here's a very useful (and cool) trick I made up a couple of years ago.

When you're working on a project or something, you often have to maintain a "To Do" list. There are some good programs to do this, for example OmniOutliner, but then to view it you'll need some software. Or you can use some web-based application, but then you'd be "locked in" that application.

So, a plain text file is the way to go...

As a convention, you can keep the highest priority tasks on top and the completed one on the bottom. If you are using a fixed-width font to view the text file, you also have more liberty to add "column" for due dates and such:

- 20050917 12: Finish backup system
- 20050931 01: Deployment tests
- xxxxxxxx 17: Take a break

This is nice, but what about the status of those tasks? Here's the trick I came up with:

  -: todo
  >: postponed
  <: late
  ~: started
  #: almost done (testing needed)
  x: done
  *: continuous development ("sticky task")
  @: cancelled (or postponed for a long time)]]>

As you can see, it's pretty intuitive. Here's an example:

# Write schema
- Update DB access
* JavaDoc
< Update specs
- Add logging
> Add admin backed
@ Add reporting tool  <---- Not really needed
x First draft of specs
x First draft of design doc

Useful, no? And doesn't cost a thing!

Published on September 21, 2005 at 15:34 EDT

Older post: Using interfaces instead of inheritance

Newer post: JavaBeans