High-priority projects in Omnifocus

So, first entry. No pressure.

Today I want to tell the Internet about a fun little hack I found for the Omni group’s excellent task management application, OmniFocus. In fact, this is a hack based on one of the methods that Kourosh Dini outlines in his ebook, Creating Flow with Omnifocus.

Dini outlines two different ways of keeping track of tasks you need to do today:

  • Filtering by flagged status: pick the tasks you want to do, and flag them. When you view your flagged tasks, you’re viewing tasks you want to do today.
  • Filtering by start date: pick the tasks you want to do, and set their start date to today. When you view your tasks grouped by start date, you’ll have a group (“Start today”) with all the tasks you want to do today.

Both Dini and myself prefer filtering by flagged status. I prefer it because flagging/unflagging is a keystroke away, and I tend to use start dates for the more mundane task of putting tasks I can’t complete right now out of my field of view.

I actually developed the use of flags to mark today’s tasks independently of Dini - I stumbled across the technique after reading Leo Babauta’s Zen to Done system. It’s a great method - it’s easy to promote/demote tasks, and it has just the number of priority levels you need (i.e. “do this right now” and “don’t do this right now”).

To my mind there is one draw-back to the flagged status method: you can’t use flags for anything else. OmniFocus only supports one boolean on-off field per task, which, to be fair is the right number. In fact, the only reason I notice this is because of the excellent alternative use Dini suggests for flags: marking high-priority projects.

There’s a section in his book (Prioritization From 10,000 To 30,000 Feet) where Dini outlines how to prioritize your projects. The best way, of course, is flagging - and this is fine if you’re filtering high-priority tasks by start date, If, however, you’re already using flags, this won’t work.

Dini’s solution is create a dedicated 30k project, and put links to your projects in there. I don’t like this method, for a couple of reasons:

  • It’s a bit of effort to “prioritize” a project - create a new task in your 30k project, copy a link to the project, paste it into the notes
  • It’s a bit of effort to get an overview of your 30k project - each sub-heading in there is actually a link to another project
  • You’re duplicating things - you now have two projects representing the same project

Here is my solution: tagging. OmniFocus doesn’t officially support tagging, but you can get something similar using an object’s notes field and the search functionality.

If I want to make a project a priority, open the notes field (⌘+‘) and type “@30000ft”.

I do this to each and every high-priority project. Then, when I want to check out projects that are important to me right now, I simply search for “@30000ft”. Suddenly, right in front of me, is a list of all my high-priority projects.

There’s one more thing I can do to make this process easier, and that’s set up a perspective. Perspectives remember search terms, so I can take a snapshot of this view as it stands, and use it whenever I need to refer to my high-priority projects. And, of course, if I do want to remove a project from my high-priority list, all I need to do is edit the notes field and remove the “@30000ft”. If you want, you could collapse every project ever and make sure that your 30,000ft high-priority perspective saves expansion, to give you an ultra-brief run-down of what you consider high-priority right now.

One other nice thing this allows me is an expanded view of my projects - a plan of what’s most important to me for the next week, month, or however long I want between reviews of high-priority projects.

This means my morning routine, which used to just be “pick some tasks to complete today”, now has two steps: * Review high-priority projects and pick some tasks to complete today * Review other projects and pick tasks to complete today

This has the nice effect of prioritising my high-priority projects - as it should. I’m more likely to pick tasks from high-priority projects and fill in the gaps with lower-priority projects, which is not a bad way to do work. The only thing I’m missing is the ability to exclude my @30000ft-tagged projects from the second step - OmniFocus searching doesn’t support boolean operators (or at least, not to my knowledge).