Archive for the 'How To' Category

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

Aug 02 2008

My “ToDo” Map

 Download: Freemind ToDo example file explained in this post.

2009/06/06 - For an updated model see the new post My "ToDo" map ... evolved.


In my last post I wrote an introductive excerpt about Mind Maps, in this one I'm writing about how to use a map as tracker for things to do (ToDos).
I think this topic is really common in a huge number of fields. It is for sure very usual in IT development, but any person having to manage time and tasks has to keep track of ToDo items.

There are a lot of tools helping in this (the keywords "To Do managemet" in google result in a lot of links), even Excel or Notepad can fit the needs of tracking items, but IMHO none of them is really useful and flexible.
Any solution I tried, became rapidly useless mainly because the divergence between the snapshot kept by the software and the real situation on the field. This is due to these reasons:

  • editing of items not straightforward or cumbersome
  • too much varying scenario (related to the time necessary to update the electronic data)
  • too much formal approach (strict categorization of data into projects, category, time limit, date scheduled, notes, alarms)

In my everyday life the scenario is really changing, my ToDo things change on a per day basis or worst hour by hour. I usually receive phone calls or emails that completely change the plans of the following hours. If this deep and frequent changes are not effectively recorded by the software, the software is useless.
I think that the best ToDos tracker should implement these functions:

  • keep track of list of items
  • differentiate tasks based on priority
  • differentiate between things to do with strict dead lines and task not placed in time
  • allow rapid moves of tasks between different category and different time frames
  • manage notes about task
  • manage generic notes (phone calls, ideas, mini-brain storming,...)
  • manage alarms for critical deadlines

I found Freemind a perfect tool that implements every feature above. With a mind map I can change plans in a while or move groups of ToDo Items from one day to another with mouse click, again I can select short term items and highlight items in progress or just closed. Even a reorganization, following a misalignment between reality and the picture stored in the map, can be made with few clicks.
In short any task involved in ToDo management is really fast and the view of things ToDo is effective and always up to date.
Last, but not least, the organization of the things to do by means of a mind map is based on the way my brain keeps track of things. In this case the map is really an electronic representation of my mind.

My ToDo map Template

I'm going now to expose the organization of my ToDo Map. Take care that a map is really personal because strictly related to the thinking process of each of us, so this explanation is not made with the intent to propose a new standard, but only with the purpose of provide an example and some simple ideas about how one can keep track of tasks and ToDos.
My ToDo map is really huge, it is made up of 1363 nodes. Obviously these nodes are not only task items, there are a lot of notes, sub notes, and sub tasks. Despite this huge number of nodes I exactly know what my map contains; even if I don't remember every single node (if I had I would not have build it) , I perfectly know how my map is organized (I built it as my mind liked!) and where I have to look for any piece of Information I need. If I "serialized" all the text contained in the map in a plain word file (Arial 12 pt) I would get 40 pages (A4) full of text! I have no doubt about the fact that my map can store information in a better way than word (see my previous post for a detailed description about information density).

My Map start with the root named "ToDo" and has these child:

  • Now "On air"
  • Today
  • Next days
  • Background
  • Memo
  • Alarms
  • Done

Now "On Air"

This node contains things I started but not yet finished. This is useful in days when I open a lot of tasks and I interrupt them frequently in order to start new urgent tasks. It is the case of "bad days", when everything seem to happen against me.

This section maybe useful even with tasks requiring a post-processing by other resources before a task can be closed. In my work this happens when I launch batch processing on servers or when my work requires some processing from my colleagues.
I place a node In this section when I start a new task, I label the node with a word or a short sentence remembering me what I'm going to do. I also place an icon (little image) to enforce the concept of "in progress task".
When I finish a task in this section I remove the node from this section and I look for other tasks in idle.
Don't underestimate the helpfulness of this section. I realized that, without the use of this section, if I started actions in parallel I'm in trouble when I have to close all the opened actions, mainly because after 2 or 3 interruptions I'm inclined to forget the actions in idle.


In this section I put the items planned to be executed during the day. I populate this node the evening before or in the morning before starting activity. This section is the most dynamic, the one undergoing frequent modification during the day.
I'm usual to sort items by order of execution. In stressing days I move items from this section to "Now on air" when I start the activity, instead, when I'm able to execute task one at a time, I don't move the node and mark the node in progress with an appropriate icon when I start the task. Then I delete the node when done (or move the node into "Done" section).

Next days

This section is divided in the following subsections: Mon, Tue, Wed, Thu, Fri.
Under single days I put the activity that at first glance are located in time. In order to give a congruent view of the week I place tomorrow as first day in the list and thus I place other following days.
Maybe it is useful to divide each day in two subsections: mandatory, planned. This can help to identify task needed for that day.
Every night I put under review the section "Now on Air", "Today" and "Next day" in order to identify task not done as planned and therefore move nodes for the new updated plan.


This section collects tasks that are not precisely located in time, without deadlines and with very low priority. It is a sort of big box containing all the activities that usually are classified as "not necessary" and are removed from our memory. I also call this tasks: "The tasks in search of inspiration".
This section is usual to grow without end filled with useless items, but maybe an old and forgiven task emerges in the right moment to be done.


This section collects notes and unstructured memos. I usually put here notes about phone calls, agreement with customers or things I have to remember for a long time.
I prefer to divide this section into customer names, than projects and then notes about each projects.


I think to this section with historical purpose only.
I usually move here tasks closed if they include specific notes I would like retrieve in future.


This section is specifically based on a feature of freemind (full package) that make nodes able to react in a specific date and time. I put in this section any item needed in a specific date, usually I set the alarm some days before the due date and set the deadline into the label.
Freemind highlights alarms with two nice blinking icons either in expired node and in each forefather node up to root. It is impossible not to take care of alarms.
Maybe tasks in this section will move to other section of the map during the periodical review of the tasks, Freemind moves the alarms set to the nodes too, so everywhere a node is moved the alarm is preserved.

Note about clouds

A nice feature of Freemind are "clouds". Clouds are a way of colour the backgroud of a group of nodes.
A cloud can be applyed to a node, automatically all nodes inherited from the selected node are kept into the same cloud.
I apply a cloud with a different color to each section descibed above, in this way is really simple to identify the category of a node at a very first glance .


In the next picture a preview of my ToDos template, you can also download the Freemind ToDo example file.

Possible improvements

If you try this ToDo management you will probably realize that this map can be extended in order to store more structured topics. During time I extended my map with more specific items like: contacts, notes about books I read, code snippets useful in my work, .... In short everything I would remember, keep organized and available in short during the day.
In this way I get rid of a lot of text file, short word document and post-it that I was usual to place on my hard disk with the aim of remember interesting things.

7 responses so far

Jul 25 2008

Mind Mapping everyday

Published under English,How To,Mind Mapping

Some months ago I discovered the concept of Mind Map, since then I found mind mapping useful in a lot of things mainly in my professional activities, for example:

  1. project management
  2. keeping track of things to do (ToDos)
  3. notes keeping
  4. support on thinking processes
  5. acquisition and organization of software requirement
  6. change logs management
  7. software bug management
  8. design of PowerPoint presentation design
  9. organization of blog posting

With this post I'm starting a series of posts describing my personal experience with this tool.
In the following there is a short introduction about Mind Maps, in the next posts I'm writing about my personal way of doing things by means of mind mapping.


From a very simple theoretical point of view a Mind Map is a graphical representation of concepts, ideas and, in more general, objects that can be cross-referenced in a tree-view fashion.

The term "mind map" derives from the idealization of the way the brain stores information. Thanks to this similarity the way of depict things in a mind map can help the brain to learn and memorize.

Graphically a mind map is a tree, in short a series of connections between nodes from a root down to leaves. Each node is labelled with a text representing a concept. Any leave is labelled with a text representing a specific detail from the general concept.
Over this simple rapresentation everyone can add personal embellishment like images, icons and colors  with the intent of making a map closer to the personal way of memorization.

The customization stimulates specific areas of the brain by means of optical signals, making the storage of information simpler.
Due to the natural difference between human beings, the customization able to trigger the brain to best memorization can differ from one author to another. This imply that a really effective mind map made by one person can produce less or not any effect to another.

The customization is a big problem in building maps useful to teams. In a following post I'm going to expose my personal ideas about this topic.

Someone try to find a strong connection between the concept of the Mind Map and the synapse/neurons structure, I don't personally find so relevant this similarity.
I indeed prefer to imagine that our mind is best suited to manage information hierarchically, in a top-down fashion or, in other words, from groups to details.

I can well understand that my mind stores my friend names under the class "friends" and, up to one level, under the class "known people". Thinking to my friend Mickey Mouse my mind run fast from "known people" down to "friends" and finally finds the folder about mickey mouse.
In this model a mind map can actually help us in storing information in a way they can be retrieved in short.

My "known peoples" map

My "known peoples" map

Size and Density of information

It is demonstrated that a normal human being can effectively pay attention to a finite number of items at the same time. This number varies from 3 to 7. This topic is detailed in:

This is also the reason why communication's gurus tell us not to exceed with the number of concept expressed at the same time. I think to the famous rule of thumb used in PowerPoint presentations: "max 5 topics in the index, max 5 items in a bullet list, max 5 box in any schema, ...".

Applying this rule also in mind mapping a node has 5-7 child nodes. Because the mind map extend from one root down to an unlimited number of child levels, the total number of information contained in the map can be huge.

Suppose that the real information is stored only in the last level of the map (leaves) and the mean number of levels is 3, if we divide any node in 5 child the total number of information is: [pmath size=12] 5^3=125[/pmath] (the power 3 of 5).

Normal brain cannot manage this amount of information if it is stored in a unique "box", but the scenario change radically if the information is grouped and retrieved by progressive details from root down to leaves like in mind map. I didn't find any specific term to call this mode of access information, I like to call this "clustered access".

From a pure technological point of view this organization of information obtained by means of a mind map is really efficient because it is a smart trade off between "random access" (the faster) and "sequential access" (the simpler). I understand that the brain evolved in this direction.

How to build maps

It's clear that, even if the classical approach to mind maps implies the use of paper and pencil, it is intriguing the use of maps by means of software.

There are a lot of software specifically designed to assist in the build process of a map.
Fortunately there are also some open source versions. My preferred is FreeMind because it is free, cross platform and user friendly.

What's next

In the next post I'm writing about how to keep track of things to do by means of a mind map: my ToDo map.

Comments Off