Jun 06 2009

My “ToDo” Map … evolved


In the previous My "ToDo" Map post I tried to explain how I use Freemind in order to keep things to do organized.

After a lot of time I'm using a mind map to keep track of tasks, memos, meetings, and so on, I realized that my map evolved to a new fashion. Step by step, I moved the nodes of the map and my map turned into a more mature shape.

If you like, you can download "ToDo" Map for freemind as an example of the structure I will write about in this post.

With time I realized that the "now on air", "today" and  "by day" grouping (see my previous post) is ineffective mainly due to these reasons:

  1. Every day I have to move to new location things I cannot do in the planned day.
  2. The difference between tasks under node "now on air" (currently doing) and node "today" is really thin and often impractical.
  3. The number of things I have to do in the future is enormous compared to things I can do in the next few days.
  4. I'm in trouble to define the precise day in the future I can place a task if the task hasn't a real deadline.
  5. I never comply with the theoretical plans, mainly under heavy load conditions, so I often rearrange my plans moving tasks, reallocating time, adding urgencies, redefining priorities...

The last point is the main cause to the evolution of my map. From a theoretical point of view I would have had the capability of defining things to do in the future with high precision, but real life is far from theory. The typical working day is full of accidents, urgencies, unpredictable events that make strict plans unusable, so any guess to strictly define future task failed.

The "evolving map"

Due to the limits described I defined the "evolving map". The "evolving map" (compared to the more static original map) is a map capable of transforming its structure over time in order to keep strong relationship with the real load of tasks. This type of map is well suited for frequent and fast redesign of plannings and facilitates the managements of urgency and low priority activities.

In order to transform my original "static" map the new "evolving map" I merged all the future tasks under a single "to do" node and I catalogued them in terms of priority and deadline (as deadline I mean the reasonable date and time in which one task should have placed under production to be completed in time) . The nodes "now on air" and "today" merged into a single node containing all the things I planned to do in the current day picked from the more general "to do" node.

Al the tasks are mixed together under the general "to do" node. The differentiating attributes are priority and deadline. Freemind helps a lot in this differentiation with "priority icons" (numbered from 1 to 7 in Freemind) and timers (only present in the full version of Freemind ) capable of alert when a the timer (placed at node level) reset.


Now let's see how to manage the main activities required in an usual task management:

  1. Add new task
  2. Retrieve the things to do
  3. Purge done things
  4. Rearrange schedule

Adding new task

In order to add a new task I have only to evaluate two things: when I need the task to be completed and how important is compared to all the other tasks I have to do. Then I placed a new node under the node "ToDo", I set a timer to a reasonable date before the due date and place a priority icon indicating the priority of the task. In this meaning priority is a rate for "importance" of the task.

Note about deadline: for unimportant or long term tasks, is usual not to have a strong deadline;  so I place the timer at the date in which is thought a priority escalation.  Two things can happen: in case of light load maybe I can complete the task before the alarm, in case of heavy load maybe the low priority task remains on queue for long so the alarm reminds the priority escalation. This ensure the task will be done in a reasonable time.

Note about priority/deadline: The use of priority and deadlines enables to the famous "important/urgent" time management model. In this model an effective time management is done rating the things to do in terms on Important/unimportant and urgent/unurgent tasks. Importance defines how much attention I have to place into the task; urgency defines how fast I have to take into account the task.
In this time management model:

  • the important and urgent activities are to do NOW
  • unimportant/unurgent things are low priority and long term activities
  • the important/unurgent are things to be planned before they become important/urgent
  • the unimportant/urgent things are related to tasks important for someone else and usually they can ben deferred to others.

The mind map can model this scenario simply managing urgency by timers and importance by priority. This affects how one retrieve things to do.

Retrieving the things to do

I usually work at my notebook with my ToDo map open in background. Every morning and sometimes during the day I look at my map and I see what I have to do.  Two things can happen:

  • Some alarms are notifying me that some tasks require my immediate attention. In this case I decide which task to start based on priority and reassign alarms to nodes I decide to postpone. Maybe, also, that some priority has to be changed due to the priority escalation process (See "Rearrange").
  • No alarms running. In this case I look at priorities/future timers and start the more urgent/important task I have to do. I must confess that this situation is really unusual to me, I'm constantly late with my schedule so my map continuously flash with a lot of timers...

Purging done things

Purging done things is the most beautiful operation because this means I have less things to do.

Usually this operation is simply a node deletion, when I need an historical view of done tasks I put these nodes under a specific node called "Done". If I preserve node I remove timer and priority icon.

Rearranging schedule

Rearranging schedule is the most strategical operation involved in task management. Freemind (and in general mind maps) helps a lot in rescheduling because is really fast and intuitive in moving nodes into the map.

Rescheduling is necessary in three specific moments:

  • timers warn about some task need attention, but at that moment there aren't resources to take the task into production
  • An urgent/important task that requires immediate attention comes, so the current activity must be suspended.
  • Periodically when planning the short term activities.

In all these situations I have to stop, look at the snapshot of the map and decide how to move hierarchically, in time and in priority the nodes. This operation makes me think to an "evolving" map, because if you could take a picture of the map at regular intervals you could see that the map changes in shape like a living being, expanding and contracting rhythmically as to the beating of the heart.

Map optionals

In the evolution of my primitive map, some other features took a new place: meetings and memos.


Meetings or tasks with precise collocation in time can be, of course, added to the set of things to do with a specific timer set in order to remind when the meeting happen, although meetings have unique characteristics that normal tasks don't have. First meetings haven't priority (once decided to attend to the meeting), then meeting are mono-task activities in the sense that cannot be done in parallel with other tasks, finally meetings cannot be done neither before nor after the planned date, in other words meetings occupy a precise window of time on the calendar.

Due to this considerations I found effective to place meetings together under a specific node and use timer as a rimender. In the text of the node I write the meeting date and time and I place the timer some days before the actual meeting date.


Memos are reminders, notes, memorandums took during meetings and phone calls. These type of information are not well suited to be placed under the ToDo node, so I have collect this information under a specific node called "Memos". Maybe I never delete these nodes, usually when the information stored is part of agreements or represent fundamental aspects of my activities.

In the very specific case in which memos are strictly related to a task, and if the lifetime of the memo is tied up with the lifetime of the task, I put the memo immediately under the node of the task placing neither priority nor timer.

Map with optionals

What about the original model?

I think that the "by day" model I proposed in my previous post is still useful in environments in which the prediction of tasks fits well the real execution schedule, when unforeseen tasks are absent or infrequent, in short when preventive planning is effective. In these type of environments the "by day" model has the merit of highlighting the sequence of tasks and set a strict step by step schedule to be followed.


If you like, you can download "ToDo" Map for freemind as an example of the structure discussed in this post.

2 responses so far

2 Responses to “My “ToDo” Map … evolved”

  1. Marco Milani » My “ToDo” Mapon 06 Jun 2009 at %I:%M %p

    [...]   Download: Freemind ToDo example file explained in this post.   2009/06/06 – For an updated model see the new post My “ToDo” map … evolved. [...]

  2. Luc Davidon 31 Dec 2009 at %I:%M %p

    a short reply to thank you for sharing your insights and maps
    happy new year !