A Better Todo List

While I’m a huge proponent of work organized around outcomes over tasks, collaborative work environments require some system for tracking the myriad interjections and follow-ups that come up during the day. Enter the todo list: only minimally modified from Benjamin Franklin to its ascendance as the “hello world” of UI frameworks.

Log–then defer–interruptions! Track commitments! Cash in on dopamine as items are checked off.

Room for improvement

Still, the classic todo list doesn’t solve everything.

  • Priorities may not be obvious
  • Task status definitely isn’t
  • The path for removing deprioritized items is unclear

Digital tools make various attempts to address these, introducing drag-and-drop reordering, multiple status labels, and trash/archive facilities. But–call me old fashioned–I’m a big fan of tracking my todos on paper. You know, paper. Pen, ink, expensive revisions.

Making the most of a paper todo list requires a different system, and this is that: a few extensions to the humble todo list I’ve found helpful in keeping ahead of the work at hand.

Daily (re)-prioritization

For years my morning routine has started offline, neatly decoupled from the endless context-switching of the Internet. More specifically, it’s begun with my daily todo list, carrying leftover items from the previous day’s forward to the top of the new one.

It’s a helpful habit. The append-only nature of paper and pen requires thinking through priorities before committing them, making this ritual the cornerstone of my planning for the day. Whatever’s lurking in my inbox? That will come. First up is getting my own priorities in order.

Must-dos and should-dos

Daily (re)-prioritization is frequent enough for most tasks, most of the time. The new todos arriving during the day rarely need immediate attention–after all, half the value of keeping a list is the ability to defer everything on it. For new additions that must happen within the day, however, a star in the margin differentiates them from the “should-dos” making up the rest of the list.

✱ [ ] Absolute must-do
  [ ] Should-do


Beyond identifying “must-do” items, I’ve also found it helpful to track status of states beyond Todo and Done.

  [ ] Todo
  [X] Done

While the binary hits the headline, it doesn’t communicate anything about the status of the task. For that, I’ve adopted two additional states:

  [\] Abandoned
  [/] Waiting

The Abandoned state is an explicit acknowledgment of a task that won’t get done–a useful tool when a todo list is gaining items faster than they’ll ever be checked off.

It’s tempting to treat the Waiting state as Started, but in practice I’ve found little need. A tasks that can be started and finished in one sitting should be–and with a direct jump from Todo to Done, there’s no need for an intermediate state.

Tasks in a Waiting state, on the other hand, are typically in someone else’s hands:

  1. starting a task ([ ] complete contract renewal)
  2. reaching a point ([/] complete contract renewal) where the contract is awaiting final approval from finance and legal
  3. getting approval and completing the item ([X] complete contract renewal)

Making the Waiting state explicit lets tasks stay on the Todo list (triggering appropriate follow-ups) until they’re ready to move to Done.


  [X] Title and og:description
  [X] Draft
  [X] Editing + review
  [X] Published

How do you approach your todos? Buy the system, or have one that works better entirely? While I’ve outlined one way to (ahem) do it, I’d love to hear from you and keep the conversation going.