The Evolution of OmniFocus

December 10, 2016 by Gabe | [mmd] |

My history with OmniFocus goes back to OmniOutliner on the Mac and the miraculous Kinkless GTD (thanks Ethan!). Those early days with Kinkless and GTD felt a bit revolutionary. Then The Omni Group released OmniFocus and set a the gold standard in task management for both Mac and iOS. The power of the perspectives and the incredible quick capture on the Mac was groundbreaking.

The transition to OmniFocus 2 killed my interest in the system. Too many of the features I counted on were cut or became more awkward. The value to friction ratio was far too low to sustain my work so I moved to TaskPaper. But I never stopped watching the OmniFocus development.

The updates this year for OmniFocus on iOS added an extended URL scheme which really caught my attention and solved one of the longterm problem gaps: natural language quick capture. There's a nice intro to automation with the OmniFocus URL scheme on the Omni forums plus a quick little example on the Inside OmniFocus site.1 In it, Ken Case describes using the "paste" function to create entire project hierarchies. Ken also has a quick intro to automation from Editorial on iOS.

The OmniFocus URL scheme is still under development and thankfully recent comments by Omni on their forum suggest they see this as an important area of innovation.

After two years of using TaskPaper and plain text as my main task tracking system, I've switched back to OmniFocus. It's not all roses but it's a powerful and flexible system that I can recommend to anyone on iOS and the Mac.

I've been back with OmniFocus for about 3 months. Here's what works for me and what is still a problem.

Drafts Inbox

Drafts is one of my most used apps on iOS. It's simple and fast but has enough flexibility to do almost anything I need to do with text. Whenever an idea starts with words, I launch Drafts before I even decide where those words need to be. So it was a natural place for me to start when working with TaskPaper on iOS. With the new "paste" URL action in OmniFocus Drafts is the perfect springboard as well.

Drafts Inbox

This action for Drafts is the key to it all.2 It uses the new URL scheme and OmniFocus' support for TaskPaper as an interchange format to create a task with natural language and common sense inputs. The new "paste" action is quite powerful yet simple enough to use from almost anywhere. Here's the entirety of the Drafts action:

Paste URL

Pretty simple.

As long as I use a minimal set of TaskPaper terminology I can create a task in OmniFocus with dates and contexts right in my OmniFocus Inbox. For example, if I add a @due tag with a date like "next Wednesday" OmniFocus correctly parses the date and sets it as the due date for the task. If I add a known context like @work then OF applies that context to that task. Even better, I can put one task on each line of a Draft to create multiple tasks at once.

I'm using the @due tag so much now that I created a new Drafts keyboard action just for inserting it. This action inserts the tag and then puts the cursor in the attribute field so I can quick add a date.

Most of the common natural language dates work with this trick. Even shorthand terms like "5d" for five days in the future or "3w" for three weeks work. Which leads me to the big head scratcher: Why doesn't OmniFocus for iOS have a quick capture field that supports the same kind of natural language input? Why make the URL scheme more powerful than the actual app? I do not know.

The Omni Group has a dedicated page for the OmniFocus URL scheme but there's also a terrific comment thread I highly recommend. There are many new parameters for the URL scheme and just about anything is possible. It's almost too easy to add tasks now.

omnifocus:///add?name=name%20of%20task?project=case%20insensitive%20project%20name%20match

Here's the current list of add function attributes:

  • name (name of task)
  • note (note text)
  • attachment (base64 encoded)
  • attachment-name (repeated if necessary for multiple files)
  • parallel (true or false)
  • flag (true or false)
  • defer (date and time, like jun 25 8am)
  • due (date and time, like jun 25 8am)
  • project (case-insensitive match)
  • context (case-insensitive match)
  • autocomplete (true or false; do children mark project complete?)
  • estimate (30m for 30 minutes)
  • reveal-new-item (true or false)
  • repeat-rule (see here for more)
  • repeat method (fixed, start-after-completion, or due-after-completion)
  • completed (date and time, like jun 25 6pm)
  • autosave (true or false)

The paste function has a few different parameters:

omnifocus:///paste?content=name%20of%20task?target=case%20insensitive%20project%20name%20match

  • target (can be inbox or projects)
  • index (positive integers count forward from beginning, while negative #s count back from the end of list)
  • content (taskpaper string, the content to paste)

There are plenty of URL schemes that work great with Workflow for iOS too. I use a few of these for quickly jumping to my most commonly used views from the Workflow Today widget.

  • omnifocus:///inbox
  • omnifocus:///flagged
  • omnifocus:///projects
  • omnifocus:///contexts
  • omnifocus:///perspective/Custom%20Perspective%20Name
  • omnifocus:///past
  • omnifocus:///today*
  • omnifocus:///soon
  • omnifocus:///forecast

Additional OmniFocus 2 Improvements

It's taken OmniFocus almost two years to recover from the redesign. The layout on Mac is much better than the initial v2 release. There's less wasted space and more information on each task.

OmniFocus Mac

I still prefer the classic layout style, born under the Kinkless banner, with columns representing task attributes. Now in OF2 this can be set globally, providing a reprieve from the "Fluid" layout.

The iOS versions now sync all perspective types with the Mac version. What a relief this is to have both context and project based perspectives available everywhere. The "Forecast" view is just absolutely great on iOS. It integrates with the iOS calendar subscriptions so I get a single view into Exchange calendar events as well as OmniFocus tasks.

OmniFocus 2 for iOS has a tremendous number of improvements. It's an entirely different tool from version 1. One of the best features is the option to create custom home screen layouts.

iOS Home Screen

The only traditional GTD-like context I still have is my work office. Since I work from home regularly, it's important that when I am in the office I check this context. If I need to have a face to face meeting with a co-worker, or stop by the hardware store near the office I need to look at my @work context. I've hoisted this context perspective up in my iOS homescreen to make it easier to access.

I also regularly hoist projects up on my home screen when they become more active. They stick around for a week or two and then get replaced by the next hot project. The customizeability of the new OmniFocus home screen has been surprisingly valuable.

I rely heavily on supplemental material to perform tasks. Even David Allen recommends that if you have a task to call someone, that task should include the number so that you can take action immediately, otherwise it should be preceded by another task to lookup the number. OmniFocus for iOS allows photo and audio attachments which is helpful but most of what I need to attach I do through DEVONthink item links.3 Attachments go into DEVONthink and the item links go in OmniFocus supplemental material (more on this below).

On the iPhone I really like the Today widget and the ForceTouch popup. Getting a quick look at the very next task is really the right way for me to do GTD sometimes.

ForceTouch and Widget

Security

The big improvements with Omni this year have all been around security. The OmniSync now offers on-device encryption which is great. I feel a lot better about using the OmniSync service instead of rolling my own sync server.

The guiding principle of today’s updates is that the only things which should ever have access to your OmniFocus tasks are devices you own and control: your phone, your Mac, your tablet.

To their credit, the Omni Group have been very transparent about security model.

Column View

What Doesn't Work in OmniFocus

Supplemental Material

Supplemental material is a core feature in my TaskPaper documents. It's just text but I usually have all of the information I need in between tasks or rolled up to the top of a project in TaskPaper. This is still hard to accomplish within OmniFocus. I've always maintained a parked project for the sole purpose of collecting supplemental information. If I need the email distribution list for another project, or the mailing address for a task to pay a bill, I would keep those bits in a project titled "Supplemental." The project and all supplemental items are marked as On Hold.

With DEVONthink for iOS, this got a lot easier since DEVONthink item links work across platform. I simply add information to DEVONthink and then link to it from an actionable item in OmniFocus. iOS 10 broke these links temporarily but the Omnigroup fixed it. I still really like the ubiquity of email capture with the Omnigroup email service. I just wish OmniFocus had native functions other than task notes.

Notes (and supplemental material in general) are second class citizens in the Omni world. It's not easy to see which tasks even have a note. Just try finding the task in a project that has a phone number, let alone which even has a note. This is an area where 2Do for Mac and iOS really makes OmniFocus look sad. It just doesn't make notes important, it makes them searchable and actionable with special fields for emails, phone numbers, and URLs. It nearly kept me using 2Do even when other aspects didn't fit the way I work. In the end I prefer the OmniFocus way of managing parallel or sequential projects and live with the 2007 way of entering notes.

Supplementals

I'd love to see the Omni Group convert their collection of apps from independent silos to a working platform. It just makes sense to me that OmniFocus should link to OmniOutliner for supplemental material and integrate with OmniPlan for high level project planning. Since this isn't the case, I find myself not using OmniPlan and replacing OmniOutliner with alternatives that integrate with OmniFocus just as well.

The awesome thing about using DEVONthink for all of my supplemental information is that it supports a wide range of files types, like mail message, PDF, spreadsheets and text files. I can even link a task to folder in DEVONthink if I just want to quickly jump to the entire collection of materials.

Defer, Start, and Inbox

I still like the old language of "start date" instead of OmniFocus' "Defer." Defer feels like I made a mistake and I'm pushing off a task. Start dates are when I want to begin work to complete a task. It's not that critical but it feels wrong every time I see that Defer label. I prefer to only use Due dates when there's really a drop dead date on a project or task. I previously abused Due dates which lead to me mostly ignoring them. That's a really bad habit if I actually want to complete things. TaskPaper helped me see that Due dates are like salt in food preparation. When used carefully and with thought, the results are far better. Go even a little overboard and the entire thing might as well go in the trash.

Moving a lot of tasks out of the OmniFocus Inbox on the Mac still feels ridiculous. It either requires two windows (one showing the Inbox tasks and one showing the project list) or a variety of clicks, tabs, and returns. This has been broken for a very long time and makes me dread processing my Inbox. Getting things out of the Inbox should be easy and fast. Omni makes it a time consuming chore.

Contexts

Multiple contexts (or tags in the common tongue) seem obvious to me in 2016. The original GTD context isn't as applicable in a world where people have their primary computer in their pocket, work from home, and often have their office in a coffee shop. Tags, on the other hand, could make the OmniFocus perspectives much better. This is also an area where 2Do and TaskPaper really shine so I've proven my theories over the past two years. Here's a few use cases that have helped me. I don't need to tag every task on a project but sometimes it's nice for filtering and quickly finding relevant actions.

Contexts

  1. Tag a project task with the people that are involved so that I can either discuss it with them in the project meeting or if we cross paths in another way. The OmniFocus nested contexts do not solve this problem when people are part of multiple project teams.
  2. Tag with "down time" so that I have a handy list of easy to accomplish tasks I can do from my phone or computer when I'm at lunch.
  3. Tag anything that involves creating a meeting schedule with "calendar" and the person's name. It's a handy reference that I need to be in front of my calendar and have access to the person's schedule as well.
  4. Sometimes I can buy an item from Amazon. Or from the grocery store. Or from the hardware store. Yet I have one context I can put on that item in OmniFocus. Whenever I have to think too hard about how I nest contexts in OmniFocus I feel the pain of single contexts.
  5. Tags are handy for searching synonyms or related words. I don't always know how I might look for a task later. A tag can just be a helpful hint to a future version of myself.

I've been using the notes field in OmniFocus to create ad hoc tags. I can create perspectives in OmniFocus from text searches so this works O.K. However, I really want tag completion to help create consistency. I've started to think that when something starts to feel like a hack, it's probably not sustainable.

On New-Age Contexts

I've read far too many words about contexts that represent enegy levels. This does not help me and OmniFocus makes it even less useful. With a mixture of contexts for energy levels, location, and people there are many times when they conflict. Then I sit there trying to decide what the single best context is, wasting more precious energy.

My work rarely falls into simple personal preference buckets. Sure, there are "quick wins" I like to accomplish, such as changing an administrator password or writing a thank you email. Those tasks already go into "admin" single action projects.

If the energy-level approach works for you, then use it. I've several times it has not made me more productive. But consider using the built-in OmniFocus functions that already exist. If I set "Estimated Time" property on a task then it's easy to create a new Perspective that filters tasks with a "Duration" of 5 minutes. These are the quick wins and probably pretty low energy too.

Repeats

I think OmniFocus still needs more ways to manage repeating tasks. In particular, there's no way to just see all repeating tasks, regardless of project. I keep most of my repeating tasks outside of OmniFocus. They are in Reminders on iOS, Mac and the web. I'm currently solving this by adding a note with #repeat on any task that repeats. I then have a way to quickly find all repeating tasks through a search. This is a terrible hack.

Layout

Check-circles? Oh boy! These are really not for me. I find them to be less informative than the old OmniFocus design. It's so easy to miss that a circle is half orange and half red, indicating flagged and overdue. It's a design decision the epitomizes everything I disliked about the version 2 revamp. Returning to OmniFocus after two years with information dense applications like TaskPaper and 2Do really highlights what it gets wrong.4 Luckily, in the two years since the check circle was introduced, they slowly added back features like column view on the Mac. Check circles are contrived and less functional (proved by flag icon plus circle coloring) but I can tolerate them. I don't like how it's become a central design element of the interface but with the other strengths of OmniFocus I'll stick with it.

Preferences

On the Mac I prefer the classic column view. It makes it much easier to scan a long list of tasks and see what's going on. But, look at that check circle. Now notice that there's a little flag? Plus a flag on the far right of the column view. For my eyes, that flag on the far right is much more visible. The red date for an overdue task is also a better alert for me than the check circle.

Column View on Mac

You can set this up in the application preferences. Here's how I have it configured.

Column Settings

Column views are great but can have visual glitches if you don't expand the view enough. That's minor and definitely not enough of a problem to discourage me from using the column view instead of the "fluid" view on the Mac.

Bugs with Columns

Keyboard shortcuts in iOS are nice but have limits that slow me down. I can't navigate a list of tasks or projects by keyboard, which also means I can not mark tasks as done with the keyboard alone as I move through a list I definitely feel the friction when I'm sitting behind a 12" iPad Pro trying to work through a project.

Global search is coming to the Mac app which will help a lot there.

What I Learned from TaskPaper

After managing work and life with TaskPaper, I developed some habits that I think make OmniFocus more usable. First of all, things that are really dependent on notifications are setup outside of OmniFocus. I use the Reminders app because I have on all of my Apple devices as well as in a browser tab on my Windows computer. This is especially true of repeating reminders such as taking the trash to the curb. I use OmniFocus to mindfully execute on a task plan, not to alert me of an appointment. I think this is really key. OmniFocus isn't a master of my time. It's a tool to help me make good decisions.

The second thing I recommend is to separate time-blocking work and put that in a calendar. This is work that happens to the exclusion of all other things. Meetings go on calendars, but if I'm really serious about getting a specific task completed, I put it on my calendar and shut everything else out. If I have to work on a budget to get it done by Friday then on Wednesday from 10 to 11 a.m. that's all I do. No meetings. Just that.

Phases of a project can be difficult to manage and see in OmniFocus. Folders are helpful in OmniFocus but it obscures the project a bit too much and makes interactions with OmniFocus, like quick adding a task, too clumsy.

TaskPaper tag attributes are terrific. I love that I can use an @waiting tag with an attribute of someone's name like @waiting(John). It tells me immediately that this task is stuck but also why. It also means when I'm going to meet with someone I can quickly search their name and see everything I should discuss with them. In OmniFocus, I get one context, such as @John. That's not nearly as useful to me.

Tags are just so much more relevant to me now than contexts and TaskPaper was solid proof. One of the biggest problems I have with OmniFocus is with tasks that are owned by someone else but that I own responsibility for. In TaskPaper I'd drop in a little @followup tag (or @waiting). Then I'd have a view to check what I'm waiting on. In OmniFocus I have to keep kicking a defer date down the road everytime I check on the tasks and it's not done. It's a lot of overhead that was previously solved by a simple tag.

I'm far better at sketching out a project in TaskPaper than in OmniFocus. The relationship between sub-projects and task is easier to understand when nothing is hidden behind a table cell. Luckily I can still do that in a text editor and then paste it into OmniFocus when I'm ready. As mentioned above, the support for TaskPaper syntax was what I really needed to move back to OmniFocus.

Copying from TaskPaper for Mac

Perspectives

This was one of the OmniFocus features that really put other task managers to shame. Today's market has caught up and saved search views are available in most apps now. I'd argue that apps like 2Do have now surpassed OmniFocus in options and flexibility. But OmniFocus perspectives are still very powerful and I live in several. While I preferred the OmniFocus v2 method of saving the current window settings as a new perspective the new method is a bit more obvious. Here's my custom "Today" perspective.

Today Perspective

The Perspectives on iOS have come a long way in the past couple of years. I really appreciate the prominence on the home screen and the ability to assign icons for quick recognition. Now perspectives can be created on iOS as well and can be context or project centric.5 They mostly work for what I need but there's a lot of room for improvement in this department. I still feel very limited when I want to create a perspective with boolean combinations. The filters in 2Do or the saved searches in TaskPaper are far more powerful and more useful. I also happen to think they are more logical and easier to use than OmniFocus perspectives.

There's no question that the parity between the iOS and Mac versions of OmniFocus is a huge improvement. If you gave up on OmniFocus for iOS because it only provided context-based perspectives, it's worth a fresh look now. iOS has near parity with the Mac now. If I favorite a perspective in OmniFocus for Mac, it automatically elevates it on iOS to be more prominent. I also replaced the built-in Today view with my own "Today" perspective.

iOS Perspectives

The iOS versions make the weekly review pretty easy, which was a major reason I went back to OmniFocus. The weekly review is a critical step in GTD and I like the option to set separate review cycles for different projects. For example, there's no reason for me to review my spring house maintenance projects every week of the year. I set the review for 6 months once we get into summer. During the spring I ramp the review up to weekly again.

Review Settings on iOS

The Mac is still the best place to do a weekly review in OmniFocus because the reviews respect the focus of the app. If I just want to review work projects then I focus on the "Work" folder and then hit the review button. This isn't possible on iOS. The best you can do on iOS is to ForceTouch on a project and pull up to get the project action list. This list will then let you review just the one project. This does not work on folders.

ForceTouch Review

Conclusion

Switching task managements systems is not something I do lightly. It's disruptive and I really do rely on my system to make a living. It's also why I care so much about what I use and when something isn't working for me I am willing to put in the time to find out why and then fix it.

TaskPaper is a marvelous system. The new Mac application is powerful but also a joy to use. Unfortunately, I usually only have an iOS device with me. While Taskmator is a champ it has some gaps and inconsistencies with the new Mac app. I also missed having an effective review system and all of the nice things I mentioned above.

I still use TaskPaper a lot. I don't put packing lists in OmniFocus. I don't put vacation schedules in OmniFocus. TaskPaper is a terrific list manager and I use it for that. This holiday I have family visiting. I didn't put my list of preparations in OmniFocus because that creates a lot of noise. I put that list in TaskPaper. OmniFocus gets one single task called "Prepare for visitors" and it's due the day before they arrive with a defer date the week before they arrive. I sure don't want every one of these items to show up in my OmniFocus reviews or my Today perspective.

Check lists

Some of the best resources I found were the OmniFocus 2.17 for iOS Manual on iBooks, the OmniFocus Field Guide by David Sparks, and Sven's OmniFocus Resources on Medium. If you are just getting into OmniFocus then the Zapier blog post is a nice introduction.

It's always worth subscribing to the Omni Group blog

Software Mentioned in this Article

OmniFocus for Mac

OmniFocus for iOS

2Do for Mac

2Do for iOS

Drafts for iOS

DEVONthink to Go for iOS

Taskmator for iOS

Workflow for iOS

Taskpaper for Mac


  1. No one can ever claim that there's a lack of source material for using OmniFocus. But, sometimes I wonder if that's just a result of the complexity of the application. 

  2. I did not create this action as far as I recall. I think I downloaded it from the Drafts action library. Unfortunately, the action doesn't seem to have memory of the original creator. Thank you to who ever you are. 

  3. See the previous Macdrifter review of DEVONthink for iOS 

  4. That pun was totally intended. I'm a dad. There's no escaping dad jokes. 

  5. I believe this is a "pro" option that requires an IAP.