OmniFocus

Second in a series on task management. Read part 1 here

In my previous post I talked about how I use David Allen’s Getting Things Done system for task management. You can implement GTD in many different mediums, from pencil and paper to a wide variety of software. When I first started with GTD I ran my system on vertically ruled index cards. However, I discovered that I had enough complexity in my life that it quickly overwhelmed my index card based system. I moved over to OmniFocus and I’ve been there ever since.1

OmniFocus is specifically built for GTD and it implements all of GTD’s fundamental concepts: projects, contexts, weekly review, etc. One of the most important features for me is that it’s available on the Mac, iPhone, and iPad and syncs seamlessly between them.

Quick Entry

One of the things that’s important to me is making it as easy as possible to enter tasks. On the Mac OmniFocus does a great job of this right out of the box. It has a quick entry box feature that will pop up ready to receive a task when you press a particular key combination (mine is Ctrl + Option + Space), regardless of what app I’m in at the time. Sometimes I’ll enter all of the details of the task in the quick entry box (Context, Project, defer or due dates), but often I’ll just put enough in there to remind me what the task is supposed to be. OmniFocus will hold the task in it’s inbox until I get around to processing it and adding all of the details.

OmniFocus has a quick entry feature on iOS as well, but it’s nowhere near as useful. Rather than just a quick keyboard combo, I’ve got to open the app and hit the quick entry button before I can start typing. Entering additional details requires navigating through lists of projects and contexts and using the iOS date picker. It’s well designed and uses iOS interface elements well, but for a long time I wanted an experience more like what I could get on the Mac.

Recently I switched over to entering my tasks using the Drafts app. Launching Drafts automatically opens up a new document with a blinking cursor ready to type. It integrates with many different apps, including OmniFocus; allowing me to send whatever I type to OmniFocus as a new task. I actually have two actions set up to send to OmniFocus, one just adds the task, the other specifically adds it to my Work context..

It’s possible to include a due date with a task as well, by putting “@due(today)” after the task (the “today” can be replaced with a specific date or a number of days or weeks). The problem with doing this in Drafts is that the parenthesis and “@“ symbol are more difficult to access on the iOS keyboard. Thankfully, Drafts supports TextExpander snippets. I set up a snippet that replaces “xdue” (which can be typed without any special characters on the iOS keyboard) with “@due( 5pm)” and places the cursor right after the opening parenthesis. So I can type “xdue” and then enter a specific due date or the number of days.2

Defer Dates and Dependencies

One of the best features of OmniFocus is the ability to defer a task. By giving a task a start date sometime in the future it won’t show up in the task list until that date arrives. This is a great feature for keeping stuff that I can’t do anything about right now out of my main task list. I use it all the time when I need to follow up with somebody in a week, or when a task can’t be started until some future time.

OmniFocus also offers the ability to make all of the tasks in a project sequential, so the second task in the project won’t appear in your task list until the first task has been done. This is useful when you’ve got dependencies where a subsequent task can’t be started until you’ve done the previous one. I do wish they had a more flexible system for this, allowing me to make one task dependent on another, rather than having to make the entire project sequential.3

Triaging the Task List

One thing I’ve always struggled with is keeping my task list manageable. OmniFocus can hold huge numbers of tasks, but I can’t deal with that many at one time. When I get too many things on my task list it makes it hard to pick out what I need to be doing right now. I find my limit is about what OmniFocus can display without having to scroll the task list to see everything (15-20 tasks depending on screen size). Defer dates and sequential projects can help with this, but I still have more things that I could be doing right now than I can easily choose from.

The solution I’ve found is to prescreen my task list and create a subset of tasks that I’ll actively consider when deciding what to work on at any given moment. I’ve tried a bunch of different ways to implement this concept in OmniFocus and they’ve all had issues. As Churchill reputedly said, “Americans can always be counted on to do the right thing…after they have exhausted all other possibilities.”4 I can’t say I’ve gotten around to the right way of doing this, but here are some of the other possibilities that I’ve exhausted:

My first approach to this was to use defer dates. I would go into OmniFocus every morning and defer all of the tasks in my task list that weren’t in the subset that I wanted to work on that day. This was rather fiddly and time consuming. In particular, it was hard to implement on iOS, where you have to defer one task at a time (on the Mac you can select a bunch of tasks and defer them simultaneously).

After giving up on the mass defer option, I started using due dates to create the subset of tasks that I was going to pick from. I’d go into OmniFocus in the morning and set the tasks I was interested in to be due that day. This was a bit less fiddly because I only had to set dates for the smaller subset of tasks that I wanted to pick from, but it was still pretty fiddly. It also made it hard to distinguish stuff that had an actual hard deadline from stuff that I had given an arbitrary due date to.

My current method is to use OmniFocus’ flag feature to create my subset. It’s less fiddly since I only have to set the flag for a task once, rather than having to create the subset anew every day. The disadvantage is that since I’m not forced to actively curate the list every day it has a tendency to grow over time, which kind of defeats the purpose of having a small subset of my task list. I’ve recently taken to supplementing this by using a paper notebook to plan my day better, including both tasks and my schedule, but that’s a different article.

An Essential Tool

OmniFocus has really become an essential tool for me. Going back to grade school, things like remembering homework have always been a struggle for me. Since then my life has grown a lot more complex, and having a powerful task management tool is the only way I can keep thing from slipping through the cracks.

Next up in the task management series: analog task management with a notebook and a whiteboard.


  1. Nine years. 
  2. The “5pm” is in there because when you send OmniFocus a task from Drafts with a due date, the default time for the task to be due is 12am (unlike when you enter a task in the OmniFocus app and the default due time is 5pm). So I’ve set up the TextExpander snippet to pre-populate a 5pm due time. 
  3. Although you can set up a subproject inside of a project and make just the subproject sequential, it’s a bit clunky. 
  4. I was disappointed to find the attribution to Churchill is probably apocryphal. It seems like a very Churchillian thing to say. 

Getting Things Done

The first in a series on how I deal with task management.

The level of complexity in a task management system needs to be commensurate with the number and complexity of the tasks that you’re managing. David Sparks relates that when he was a student, his task management system was to write down the day’s tasks on the napkin he got with his morning coffee. I never used a napkin, but as the complexity of my life has varied the complexity of my task management setup has waxed and waned from simple checklists (both paper and computerized) to powerful task management software.

Right now I’m at a fairly high level of complexity: my task management system involves two different pieces of software, a notebook, and a whiteboard. I’ll talk about these tools in future posts, but to start with I wanted to talk a bit about the conceptual framework that underlies it all.

That framework is the Getting Things Done system by David Allen. GTD is one of the most popular task methodologies, there are a lot of people out there using it. However, everyone seems to have their own particular take on the system. I sometimes think there are as many was of implementing GTD as there are people using the system. So what I describe certainly should not be taken as canonical. It’s more like, “This is my GTD system. There are many like it but this one is mine.”

Clean Sweep

Of all of the aspects of GTD, the one that was the biggest benefit to me when I first started was getting all of my tasks out of my head and into some sort of system. This is important for a couple of reasons: First, since I am terribly absent minded, any task I just try to rely on remembering is very unlikely to actually get done. I have to get it written down in a place where I’ll come back to it later. Second, (and this is the reason that David Allen emphasizes) having these unfinished tasks bouncing around in the mind is a distraction. It’ll be there, gnawing away until it gets done. Perhaps because I’m so forgetful this has been less of a problem for me.

The cure for both these ills is to get tasks out of my head an into some sort of system. For me, that system is OmniFocus. I’ve got it set up so that it’s extremely easy to get tasks into the software and as soon as I think of something I need to do I’ll pause whatever I’m doing and get it in there. I know from experience that there’s not a moment to waste if I don’t want to forget it.

Next Actions

The next step in GTD is to group tasks into projects and organize them as a series of “next actions”. One of the things I had to learn how to do when I started with GTD was distinguish between projects and actions. When I’m capturing a task, it might go into my system as “learn programming language X”, but that’s not something I can just sit down and do. It’s too big and involves too many different steps to bite off in one go. The next actions might be “Search Amazon for books on programming language X” or “Download programming language X software”.

The critical idea here is that taking a larger project and figuring out the next step requires mental energy. If I have to put in that energy right at the moment when I’m trying to start the work it creates an additional barrier, and the harder it is to get started the more likely I am to do something else. By putting in that thought about what the next step is up front, it lowers the amount of effort it takes to get started with the task when the time comes to actually do it. So when I’m looking at my task list all I have to do is pick one and do it.

While the “action” part of next actions is important, the “next” part is critical as well. One of the things I’ve struggled with is when my task list gets too long, it becomes harder and harder to go through the list and pick something off of it to work on. This makes it important to limit the task list to stuff I can actually do right now. There’s no need to clutter it up with something I can’t start on until next week or tasks I can’t start until I hear back from a colleague. This is where software can make a really big difference. One of the things I really like about OmniFocus is it’s ability to defer tasks (hiding them until a future date) or to make tasks sequential (you don’t even see Task B until you’ve checked off Task A). It really helps keep my list of available tasks manageable.

Contexts

The other way GTD is set up to limit the number of available tasks is by dividing tasks into different contexts. If the task is to fix a leaky faucet at home that’s not something I need to see when I’m at work.

This is one aspect of GTD that I’ve always struggled with, and I know I’m not the only one. When David Allen wrote Getting Things Done back in 2001 the canonical contexts where things like Phone, Computer, Internet, and Office. The idea was on an airplane you could ignore tasks that require phone calls or internet access. If you didn’t have your computer with you didn’t need to see tasks that require a computer or internet access. The problem is the proliferation of mobile devices and cellular data connections have blurred these lines tremendously. Unless a task requires me to be in a particular location, it’s usually something that I could be working on wherever I am.

So, I have three contexts: Work, Home, and Computer. The real divide here is between personal stuff and job related stuff. Work is for everything job related. Personal stuff is divided between Home and Computer. The tasks that require me to physically be at home go in the Home category and things that I can do anywhere I have access to a computing device and an internet connection in the Computer category.

In turn, this means that contexts don’t do a very good job of limiting my available task list. If I’m at home I could be working on everything on my Home and Computer tasks lists and almost everything on my Work task list (with the exception of a few tasks I need to physically at the office to do). This means I’ve always got a ton of different things I could be working on, which makes choosing one of them to actually work on more difficult.

Review

The final piece of the puzzle is to review outstanding projects and next actions every week. It’s really a series of questions about each project: Is this something I still need or want to do? Are there any tasks associated with this project that haven’t made it onto the list of next actions? If I haven’t made progress in the last week, why not?

This is another area that I’ve struggled with and it’s really a critical one. When I fail to do my review for a couple of weeks cruft builds up on my task list and things fall through the cracks. I’ve gotten better about this in part by scheduling time for the weekly review. I review for my personal projects on Sunday evening and my work projects on Monday afternoon. I’m also using an app called Due that’s another part of my task management system to remind myself to do the review on a regular basis. My track record on weekly reviews still isn’t perfect, but it’s getting better.

Getting Things Done has really been a godsend for me. Without it I would be blowing deadlines and missing tasks left and right. It’s really essential for me to be able to function as a responsible adult.

Next up in the task management series: OmniFocus, my task management software of choice.

Inventorying my Tools

One of the things I’ve been inspired to do lately is to take an inventory of all the tools I use to get work done. 1 To help bring some order to this I’ve broken it down into tools I use every day, tools that I use often, and tools that I only use occasionally, but are vital for particular tasks (within each of these categories tools are listed in no particular order).

Every Day

OmniFocus
Microsoft Word
Safari
Chrome
Outlook
Spark
iPhone Mail app
Hours
Bear
1Password
Dropbox
TextExpander
Field Notes

Often

Drafts
Byword
Ulysses
Workflow
Excel
Numbers
PowerPoint
Timepage
My office whiteboard

Occasional But Vital

ArcGIS
TransCAD
Python (IDLE)
TextWrangler
Scrivener
OmniOutliner
OmniGraffle
Fantastical

The list itself is kind of interesting, but I think the real value here is to reflect on the tools individually and as a set. Are there some of these where I would benefit from learning to use them better? Which ones do I want to use more often? Which ones do I want to use less often? Are there tools that don’t fit my needs anymore? What tools aren’t I using that I might benefit from?

I’d really like to move Drafts up the list and make it an app I use every day. I know I’m not using it to it’s full potential right now. On the flip side, I’d like to use Microsoft Word less often. It’s in the “daily” category because I use a PC at work and almost all of the folks I collaborate with don’t write text any other way except in Word. I’d much rather use a simpler Markdown enabled text editor (several of which you’ll see on the list). I doubt I can get it off the list entirely, but only having to open it a few times a week seems doable.

One of the tools that’s helping me diminish my reliance on Microsoft Word is Bear. It’s can export content as a Word document and, using Dropbox, I can get the exported .doc file onto my work PC fairly easily. When I initially made this list, Bear was in the “often” category, but by the time I got around to writing this article it had jumped up to “every day”.

Among the things this list has me thinking about is whether Byword is going to stick around for me much longer. It’s been a mainstay for me on both iOS and the Mac for a long time. But when I look at all of the text editors on the list I have to wonder how much room there really is for it between Bear on one hand and Ulysses on the other. About the only thing Byword has going for it right now is when I need to make some edits to a text file on the filesystem of my Mac (since both Bear and Ulysses want to store their own documents internally).

Many of the apps in the occasional category are problematic. They serve a vital purpose, but I don’t use them often enough to really achieve a level of mastery. There are a few of them like ArcGIS that were everyday apps for me in the past and enough of that knowledge has stuck around that I can still make them dance when I need to.

For some of them I probably just need to decide if a more specialized app that I seldom use is worth the overhead compared to a more general tool that I use less often (Ulysses versus Scrivener, for example). For many of them, though, I really don’t have a good alternative. It’s just not a problem I’ve got a solution to at the moment.

In addition to all the apps, you’ll notice a pair of analog tools on the list (Field Notes and my office whiteboard). Initially this list was going to be focused on just software tools, but these are important to my getting things done. In particular, the Field Notes Steno books that I use for all my note taking in meetings and the like is probably one of the most vital, and most used tool on the list.

Overall, I think this was a useful exercise. It got me thinking and caused me to make some changes to how I use certain apps. I’d encourage others to give it a try as well. It’s probably something worth doing on a regular basis.


  1. I’ve excluded personal stuff that I use purely for recreation, like Reeder and Sonos.