A major difference found between task management systems is between contexts and tags. My own preference is for contexts, at least for the reasons I outline below. Meanwhile, I wonder if others make tags work in ways I have not considered and welcome any thoughts in the comments.

One and Many

The difference between contexts and tags may be more subtle than at first recognized. In general:

  • Tasks may be assigned only one context
  • Tasks may be assigned any number of tags

While it may seem that tags have an advantage based upon this initial impression, I feel there is actually an advantage to the restriction placed on contexts. It’s not quite a “less is more” idea, so much as it is more similar to a restriction of a flow that ultimately produces a sound.


An Example with Tags

Take, for example, a task such as adding a list of ingredients on an iPad/laptop list for later use. It needs to be done at home, in the kitchen, and either on the laptop or iPad.

Using the tag system, one may write:

  • Copy list onto iPad or laptop – #home #kitchen #laptop and #iPad.

A major point of the GTD system is being able to look at a context list based upon one’s location and/or available tool and readily be able to choose a task without having to consider whether or not it can be done. Where or with what a task can be done is written up front, either at the time of task entry or while processing an inbox.

In this scenario, were I at home in the kitchen and I selected #home, the task “Copy list onto iPad or laptop” would appear. However, if I did not have either my iPad or laptop there, the task could not be done, and the task list “#home” would be compromised. Confidence would lost that the task list accurately reflected what could actually done at the moment. One would recognize the need to re-think through each task. As forethought is the name of the game, the system is defeated.

One could theoretically add the functionality of an AND/OR system similar to the iTunes smart play lists. However, one then runs into the problem of needing to tag everything with all possibilities of tools, people, and places. You may see a task in the #kitchen, realize you need your laptop, and then recognize that the task has not been tagged with the #laptop. You would then need to create the smart list to reflect the present situation and add the tags as needed.

This latter method could be functional and may even become a part of a workflow, but it is additional work.


An Example with Contexts

Consider, however, the functionality that is created by contexts. Because only one context is allowed per task, one then needs to carefully consider which parts of the task require which tools. The singular action of Context lends nicely to working with the phrase “a person, place, or tool without which the task cannot be done”. The task may even be realized as several tasks:

  • Task 1 Get laptop or iPad @bedroom,
  • Task 2 Get cookbook @kitchen
  • Task 3 Write list @computers (encapsulating both iPad and laptop)

While this is a simple project, the concept holds for larger projects as well, where the gathering step may not be immediately apparent. Other examples surely exist. The assignment of a single context, in this case, fostered the conditions for actually doing something about not having the proper conditions for work, as well as helped break down the project into smaller components.

While I explain elsewhere an implementation of tags in creating categories for projects and tasks, it is not something I use much. I imagine tags have their uses in task management system that I have simply not considered and welcome your thoughts.