zerowidth positive lookahead

The Way I Do Things(.app)

Looking back on my log of completed items in, I realized I’ve been using Things for more than a year now. Prompted by Erik Kastner, here’s a reflection on how I use it for my day-to-day task management.

Ubiquitous Capture

One of the most helpful features of Things is the ease with which I can get something into the app. The system-wide hotkey for quick entry means I can take note of something I need to do later from any application without interrupting what I was doing.

While Things Touch is full-featured and beautifully designed as an iphone app, I only use it for entering items when I’m not at my computer for syncing up later. Still handy!

Don’t forget to include enough detail for a new task, so you can remember the context and what you were thinking about. I speak from experience atop a pile of deleted nonsensical tasks.


I use projects both for focused, deliverable projects and as general topic-related dumping grounds.

Generic Projects

The generic projects are for higher-level areas in which I may need to do things, but not immediately. An example of this is the set of gem libraries at work. Often I’ll think of something that would be nice to improve or fix at some point, but because it’s not a showstopper or critical thing at the time, it’ll end up in my “Gem Infrastructure” catch-all. I scan these every week, so I do stay aware of them.

Someday/Maybe is probably a better way to handle these kinds of tasks, but I haven’t tried it.

Specific Projects

When a specific project — usually something that takes less than two weeks — comes up, I’ll create a project for it. These go at the top of the project list, so those project items show up in “next actions” first. Often I’ll end up camping out on an individual project view for hours at a time, adding and checking off tasks as I think of them. This is faster and more focused than bouncing back and forth between Next and Today views, especially for an afternoon sprint on something.


When the tasks I’m working on are spread out across multiple projects, I’ll switch back and forth between the Next view and the Today view. First thing in the morning, I usually scan through the Next list and pick out a few of the things I can get done that day. Those go into Today, and I’ll work from there.

Areas & Tags

I use these as overall high-level containers to separate Work, Home, and Code projects and tasks. This doesn’t provide an immediate benefit aside from logical grouping in the Next view, but when used with tagging it makes it possible to filter items. When a tag is applied to an area or a project, everything under it gets the tag as well. Once an item is implicitly tagged, it can be filtered in the Next or Today views. This cuts down on what’s visible on my Next screen when I’m trying to focus specifically on work-related tasks.

Recurring and Scheduled Tasks

I use both of these features frequently. In particular, I have an “Inbox 0” task that pops up a day after the last time it was completed. This means I usually see a brand new one of these every morning unless I’ve been lazy, but then it goes away when I’ve checked it off and doesn’t come back until the next morning.

Scheduled tasks are great for situations like “oh shoot, I need to talk to this guy about this feature, but he’s not back until next tuesday.” I’ll create a scheduled task that for next Tuesday, scheduled to show up as due that day, and I don’t have to think about it again until it pops up on my Today list.

Right for you?

Sure, maybe. There are plenty of options for keeping track of tasks. You can get into a more complete GTD-style workflow using Midnight Beep’s Inbox, simplfiy a little with TaskPaper (has a vim plugin), go all-out with OmniFocus (also has an iPhone app), or check out iGTD too.

For more information about how others are using Things, see the CulturedCode forums (defunct).