31.1.13. Refining my Work Contexts in OmniFocus

Contexts are a major component in the GTD system by David Allen, and thus figure prominently in OmniFocus. Understanding and working well within contexts is an ongoing process. Some are immediately understandable, such as "Grocery Store" or "Home". Some may be devices, such as "Phone". These are known physical limitations where an action can only be performed in that physical space or device.

My life doesn't involve a lot of physical contexts outside of errands (then grouped by a couple of common errand types, and then by store for anything really specific), home, and work. But 'Work' is where I do and use much of my planning. I found that just having that as a lone context didn't work for me. Years ago, I set up two sub-contexts, Coding and Office and that got me by for a while, with most work tasks being in Work : Coding. This is still the case today, but I've recently found that it's helped to create some additional contexts that revolve around tools and responsibilities.

My work sub-contexts:

  • Coding, wherein I do most of my work. This is the editor - terminal - browser cycle, usually. For the longest time, this context was synonymous with "@work", as it was, well, what I did.
  • Deployment, a newly created context. This also tends to involve the terminal, but doesn't really depend on the editor or other bits. It tends to mean kicking off some automated scripts and keeping an eye on them. I separated it out into its own context so that I could see these separately from all of the potential coding "next actions", as deployments may have a higher or different priority. For example, I can deploy while eating lunch at my desk, so I might let these pile up from various other projects.
  • Research. The actions in here vary, but being in this context often signifies needing to crawl through code, archives, or the internet to learn something new or be reminded of how something works.
  • Basecamp, for needing to interact with the Basecamp project management system. The actions for this could mean just marking a task assignment as complete, or it could mean needing to write a message or comment to communicate with the team. I found that these kinds of actions were starting to slip from my head.
  • Agenda for anything I need to bring up at a meeting.
  • Documentation for tasks needing a bit of extra focus for writing and publishing.
  • Office for anything generic that can only be done at the office. This might mean something that requires a printer (I have none at home), or it might mean something I need to pick up or drop off at the office.

The nice side of this is that I can just park OmniFocus on my iPad in the "Work" context and see the available actions in all of these sub-contexts. The context they're in might let me know the time or tools involved, and that can help me make decisions about what to do next when I have multiple things happening at or near the same time. For example, I met let a couple of deployment tasks queue up, or I can do a deployment task while working on another project's coding task, as deployment requires little physical or mental labor but may require a lot of watching and waiting for changes to roll out across our servers. My Basecamp tasks can queue up for the end of the day, and have been helpful in reminding me to update our central project system used for company communication.

There seem to be some people these days wanting "multiple context assignment" in OmniFocus. I do not. I'm happy with the hierarchical context system. When in work mode, I can choose the level at which I want to focus and tune other things out. OmniFocus's hierarchical contexts also make re-organization easy without losing assignment. If a certain hierarchy isn't working out, I can change it with some dragging and dropping. This has helped keep my system functioning for me as my needs and expectations have evolved over the years.

Labels: , , , ,

8.1.13. Collect, Clarify, Organize - Guide to Evaluating Personal Task Managers

I've recently discovered the excellent Mikes on Mics podcast and have been listening to some random episodes. One episode I was interested in was Episode 5, Taking You To Task where the hosts talk about choosing task managers. They spent a lot of time talking about OmniFocus and Asana and some time talking about general evaluation of tools, and while they often recommended "find the tool that works for you", I don't think they established a good criteria for selecting a task manager. It got me thinking about the steps I find important.

I'm going to focus on personal task management here. Group / collaborative management rarely applies to a "whole life" scenario and is typically not something that is chosen by end users anyway. Someone who is a freelancer working with various groups of people at different times may benefit by such a system, but for the most part I believe that group/collaborative task management can be a second level system if it is needed in one's life.

So what should a personal task management tool provide? A good system should help you collect, clarify, and organize, to borrow terms from David Allen. To borrow terms from the Rational Unified Process, these steps may be: inception, elaboration, construction, and transition. Finally, there is also review. When evaluating tools, it may help to make a list of these things and try to answer how well each tool helps. The short list is:

  1. How easy is it to rapidly enter things into the tool?
  2. Is it easy to edit and elaborate on things once they're in the tool? Is it easy to defer things off to the future?
  3. How easy is it to group and organize tasks? Does the tool support organization in a way that reflects my system or brain?
  4. Once tasks are in the tool, how easy is it to focus on just the things I need to get done now? How easily does it let me define what 'now' means?
  5. Can the tool be trusted to be with me and reasonably up-to-date wherever and whenever I need it?

I expand on these topics, and more, below.

Collection (Inception)

Collection is an important step. How easy is it to rapidly add new items to the tool? This should be offered in a way that can be as unobtrusive as possible. On the desktop, many task managers feature a 'quick entry' window that can pop up, accept input, and disappear. Some may accept emails, either via special rules and scripts that run inside the mail client; others may have a dedicated email address. On devices, does it support input within a tap or two of the launch screen? Does it support voice? The tool should not only make it easy to add new items, but it should make it easy in a way that makes sense for how you use it. This can be easily tested within any desktop software's evaluation cycle.

A good modern task manager should have an "inbox" which means "collected, but unprocessed items." You should be able to add to the inbox easily and without guilt. You should also be able to process that inbox easily, which is discussed in the following steps.

Clarification (Elaboration)

In collection mode, you may jot down just a couple of words or copy in a few lines from an email. The next step is clarification/elaboration. A good tool should make it easy to start organizing items and their relevant data. A task like "call vet" should be easily expandable with a note about why you need to call the vet. If the tools supports devices like the phone, it should highlight phone numbers in the notes to make it easy to place a call within the task manager. The best way to cut down on the anxiety of tasks is to provide your future self with all the information it needs so that when it comes time to do the task, there's little reason to escape it. When evaluating the tools, think about what kind of information is helpful for that future self and evaluate whether the tool you're using makes it easy to enter and view that information or if it makes it difficult.

When clarifying a task, it may cause multiple subtasks to break out. Does the tool support hierarchies (outline style structure)? Does it let you think about how those hierarchies work (i.e. - are they a chain of dependent or independent actions)? If you're someone like me who thinks in outlines, this is an important thing to evaluate. If you're someone who thinks in flat lists, it's not as necessary.

Clarification is as important as collection, and tools that make it difficult to edit task titles and notes are to be avoided. Again, within the trial period of most desktop apps, you should be able to get a feel for this.

Organization (More Elaboration)

Most tools offer organization. A good GTD® style tool should promote organization by project and context. How easy is it to turn an individual task or one with subtasks into an new project? How easy is it to assign projects from the collection pool (Inbox)?

This is where tools can differentiate themselves and you can really start to feel out whether a particular tool might work for you. Some tools support projects as top-level list items, and everything else such as contexts are provided by tags. I'm not a big fan of tags (I find maintenance of a tag taxonomy tiring), but it works very well for others. Other tools support both hierarchical project and context lists. Some tools make it was to group things into folders as "general areas of focus".

The important evaluation questions are: is it easy to organize tasks in a way that makes sense to your brain and/or system? If you're a drag and drop person, does the UI support easy organization using drag and drop? If you're a keyboard person, are there sufficient keyboard shortcuts for assigning projects and tags/contexts as well as support for reordering (moving tasks up and down)?


Dates are important for clarification/organization, and allow you to have a good system for handling as much of your life as possible. A good tool should allow setting both start and due dates while requiring neither. Using both start and due dates can be an effective way of reminding yourself about a follow-up communication (i.e., getting an email that says "get back to me in a month if …") or other long-term reminders (renewing a web domain; canceling or renewing a membership; making travel arrangements for a conference). Start dates are also good for deferring or pausing work when interrupted by a more pressing project. If you don't always trust your own memory, a tool that tracks completion dates may be important when you need to look back at when you last paid a certain bill or need to write a report of work activity completed that week for a particular customer.

A particularly good tool should integrate with the platform's calendar if scheduling is important. This could be either being able to publish items as an internet calendar feed, or providing a view of scheduled tasks alongside other calendar items inside of the tool itself. Or both.

Note that items in a personal task system are just that - tasks. It's a good place to store reminders about setting appointments (i.e., call dentist in six months to schedule cleaning), but not a good place for the appointments themselves.

Construction (doing the work)

Your job is not about how well you organize your tasks. Your job is, well, your job. At some point, you actually have to do the work. After it's been collected, clarified, and organized, how easy is it to view? Does it offer views that let you focus on just the tasks you need to do now/next? What you need to do today? Who do you need to call? Who do you need to email? What files were you going to edit? What applications do you need to deploy?

Some days, I feel like the main character from the movie Memento, suddenly asking "ok, what was I doing?" If I've put my tasks together in my system in the right way, I should be able to answer that question pretty quickly by turning to my task manager.

This may be the hardest step to evaluate as this is when the system gets personal. The tool needs to step out of your way so you can do your work, but be able to answer the important "OK, what's next? What was I doing?" question as quickly as possible.

A good tool should help you focus on just the tasks that are relevant, hiding everything else, but make it easy to pull back to the wider view. You don't need to see bills or laundry action items when you're coding in the office or preparing a legal brief; and you don't need to see those office items when you're grocery shopping.

Having a good system or process like GTD® helps you understand the significance of these areas of focus and can help you evaluate the tools better. If you don't have a system of organization beyond basic project or context lists, then the more powerful tools can be avoided and you can get your feet wet with something like the Reminders App.

Transition (moving forward)

Of course, a good task management app should make it easy to mark a task as complete. If it has good "what's next?" views, it should pop the right item(s) into place as soon as you mark one off.

A good tool should keep completed items in the system but out of sight, and make it easy to bring those completed items up again when needed.

What you think should happen when you mark something as complete is a personal choice. I like having access to "what's next" views that just show me the next actions available in a certain context. But I also like being able to switch right to a project and focus on its actions (both next and upcoming), which can work well at work when I'm doing a single coding project at a time and want to see the upcoming steps.

This can be another hard one to evaluate. Try the different tools and just get a feel for how they present the items you're supposed to do now, and what happens when you mark those as done, and if you like the flow. Since this is where customizations may come in, you may want to read into the help files and videos and communities if you're not sure the tool does what you want.


This is a major part of GTD® and, I believe, any good personal task management system. Review is what keeps your system from being "a place where good ideas go to die".

To evaluate review, just try to see if a tool has a good way of seeing and navigating through everything active or future so that you can evaluate if that's something that should stay, should go, or needs new clarification. This is hard to evaluate during the limited free-preview times offered by most tools because it might take a while to build up enough data to review. Some tools offer full on review modes, with the ability to timestamp the last review and when next to review a project. If this kind of review mechanism is important, look for that when evaluating tools. It's not a killer feature, but it can help ease the mind.

Ubiquity (everywhere you want it to be)

In GTD®, David Allen talks about needing a "trusted system" which is something you can rely on as being always available, always working, always up to date. The best system for this for the longest time was pen and paper. But now with smart phones, widely available internet, "The Cloud", etc, this can be handled by software. Is the tool you're evaluating available on the devices you need? Is it easy to keep all of those devices up to date?

You may not be able to evaluate software on the phone or tablet for free, but when looking at these systems, you can get a sense from the tool makers web sites and communities around that tool about how well ubiquity works.

Labels: , , ,

3.1.13. Remembering What You've Done, with OmniFocus
This year, the Christmas / New Year holidays brought about a pair of very short work weeks. This first day back brought with it our usual semi-weekly meeting, and one of the items that was still on my list was a pair of support tickets that I had completely forgotten. My boss said "no, you know about them, you were working on them last week and talking about them!" Yet there were no active action items or projects related to these items in my OmniFocus, and I was sure that if I was still working on these issues, they'd be written down. Did my system fail me?

We checked the live site in relation to in question and they appeared partially done. "That's funny," I thought, "why didn't I have an action for the remaining items? Did my system fail me?" I was stumped, trying to remember the previous Friday. I had worked on these issues, and towards the end of the day they opened up a larger topic that we discussed in our week-closing get together (half meeting, half beer bash). Maybe I got these support tickets nearly-finished, but the week closer had killed the final one. But again, if that had happened, I would have that final action written down. Right?

Enter my Recently Completed OmniFocus perspective, which shows all of my completed actions, grouped and sorted by their completion date. I flipped back to last friday, and sure enough, there were both support tickets as OmniFocus actions, and they were both marked as completed. My system didn't fail me! I double checked our source code repository and found the related commits and was able to verify that all the actions were, in fact, completed.

So what happened?

When the support issues came in via Basecamp, our company's project management system, I then entered them into OmniFocus which I use as my personal system. With OmniFocus, I then have much more control over editing items, grouping, organizing, splitting, etc. As I completed the items, I marked them as complete in OmniFocus, but I forgot to mark them as complete in Basecamp, which caused my boss to bring the items back up in our Wednesday meeting. A new trick that I've added to deal with this is to make a new context, Work : Basecamp, with an action to go in and close out tasks and/or leave comments as necessary.

The takeaway from this is that when using OmniFocus as your complete system, it becomes a trusted resource for not only "what am I supposed to be doing?" but also "wait, didn't I do that already?"

Side Story on Bills

A few years ago, I remember getting a phone call from American Express, asking why I hadn't paid my Amex Bill. It turns out that I had just forgot to do it. I had paid the previous bill pretty close to the deadline, and then spent the next month thinking I had paid the latest bill because my brain said "yeah, I just paid that!"

Now I put all bills into OmniFocus, even if I intend on paying the bill immediately upon arrival. Why? I have a Bills Paid perspective which is like my Recently Completed perspective but focusing on just Bills, and I can refer to that if I'm thinking "wait, it feels like I should be paying the gas bill right about now. Did I do that already?" Also useful for any paper-mail or other check based situation (like my rent checks) when I notice that I have too much money in my checking account and want to see if I did pay that month and the recipient was being slow, or if I was the errant party.


Labels: , ,