Home GTD Software

Getting Things Done

Date: 2 march 2007
By: Johannes Verelst

This week I enjoyed a dutch course by Taco Oosterkamp about Getting Things Done by David Allen. He proposes a system that will make you remember the things you need to remember at the correct time. I just recently switched jobs within the company where I work, getting more project management tasks. One of the hardest things for me it to be sure that nothing (both at work and privately) falls through the cracks. Apparently this system is perfect for that, and I'm soon to find out.

Below is the complete story on how I arrived at my current setup, but if you want to short version, it consists of:

1. What is it?

I am not going to explain how GTD works, you can find excellent explanations when you do a bit of googling. Lets just say that it's all about collecting stuff, processing it by defining next actions or filing it, and then get the stuff done.

2. Setting it up

After reading the book and folowing the course, I spent a huge amount of time trying to find the software that could manage it all for me. Since I work on a Mac, Outlook isn't an option, uless you want to use the OSX variant called 'Entourage'. I'm not much of a fan of that, and being a Mail.app and iCal user, I've tried to set the system up using that. Besides this I also have a Palm T|X (soon to be a Treo 680 I hope), which needs to be in sync with everything. All Palm software I found sucked enourmously, or it is stand-alone on the palm and not-syncable with the desktop.

3. Where to store it all?

The final answer for me was: iCal. First I thought that I could use Mail.app only, and flag mails that need to be answered. Unfortunately, this doesn't map well to the contexts from GTD, and I ended up emailing myself stuff in rder to get it into the mail system. Also, mail.app is not syncable with a palm.

Within iCal, I mapped every context to a calendar. This gives me the following list (quite personal to my taste, but you can alter it to your own needs. By the way, mine are in dutch, but I translated them for all english readers)

You may notice the absense of the '@' sign: I finally decided not to use it. I might put it back someday, but it screwed with some of the applescripts I was writing.

4. How to put it there?

So now I've decided to put everything in iCal, I need to put stuff there. There are two ways of entering data:

4.1 From an email

According to David Allen, there aren't many options when an email arrives. I noticed there are only a few things I do with my mail:

With the great Mail Act-On plugin for Mail.app (it's free, hooray!) these three things all cost me 2 keystrokes each. Spacebar to get the Mail Act-On menu, and then one key to perform the action.

To be able to create a TODO out of an email, I wrote the following Applescript. I'm not very happy with it at the momet because I can't override the subject, but somehow the dialog method of Applescript is not playing nice on my machine. Still, it might be of some use to you.

on perform_mail_action(theData)
 set cal to "Work"
 tell application "Mail"
  set theSelectedMessages to |SelectedMessages| of theData
  set theRule to |Rule| of theData
  if (count of theSelectedMessages) is not equal to 0 then
   repeat with eachMessage in theSelectedMessages
    set theSubject to subject of eachMessage
    set theBody to content of eachMessage
    set todoSubject to theSubject
    tell application "iCal"
     set newtodo to (make new todo at end of todos of calendar cal)
     tell newtodo
      set summary to todoSubject
      set description to theBody
     end tell
    end tell
   end repeat
  end if
 end tell
end perform_mail_action

I also use MailTags 2.0 Public Beta 7, to allow me to quickly set some properties of the emails that are processed. I don't think it's completely necessary, because everything is a iCal TODO, you can just invoke an applescript that handles that. Still, mailtags allows you to create a todo out of any email you have, which might be handy if something goes past your inbox (which shouldn't!!).

My INBOX is not my normal mail.app inbox: it's a Smart folder instead. I use the following smart folders:

With smart mailboxes defined, you can now fold up your main 'Inbox' folder, and only open up the 'Smart mailboxes' one. This zen-like state of your mail application will prevent any distraction. At least, it does for me.

4.2 Manually

If you want to enter a todo manually, it needs to be done as efficient as possible. So, how does this sound: Sounds neat huh? All you need for this to work, is: This proves to be very, VERY efficient in my case. Together with a good naming scheme to keep stuff sorted, I can literally dump an idea in the correct place with only 5 seconds overhead. Some examples:

5. The PALM ...

5.1 Finding the software

I already mentiond I use a Palm T|X. If you're wondering "isn't there a nice Palm application that is better than Tasks which can manage my next actions etc."?. No there isnt. I've tried them all, and either they suck bigtime, or they can't interact with anything on your Mac. Syncing iCal with the Palm Tasks application was the only workable solution for me.

5.2 How to sync it?

Unfortunately the sync software for OS X is not too smart: it puts all the data from all your calendars in one big calendar, even though the palm calendar app supports multiple calendars. So that is why I ended up buying the missing sync. Yes, it'll cost you $40, I'm not affiliated with them in any way, but you absolutely need this if you want to sync your Palm with iCal. I just figured that it's less expensive than the last bottle of whisky I bought, and it will probably last longer also :).

After syncing you'll have all your todo's grouped by context in the Palm tasks application.

5.3 Other cool palm software

I decided that putting shoppinglists in todo items is insane if you can use something as cool as HandyShopper. All my groceries, office supplies, cds-I-might-buy, stuff-I-need-to-do-when-i'm-in-the-big-city .. it all goes in there.

6. Daily cockpit

So, now your entire life has been put into Todo items, you've got your palm in sync, your email uder control. This might be a good time to actually do something useful. This is something I learned from one of my colleagues at work (my former manager Fokke Kooistra): have a good cockpit with only your tasks, which you use as a starting point when you are working. He uses Entourage with the 'tasks' view, we need something that talks to iCal.

I didn't find much software that can do exactly this, but I did find a Dashboard Widget: DoBeDo. I installed it, created some groups (where you tell the widget to show tasks from different calendars together), and it works perfectly. There is only one but: it cannot sort your items based on calender within a group. I'd like to have all my TODO's first, my 'Waitingfor's at the bottom and my 'Agenda' items in between. I emailed the author, and he replied:

Johannes,
This feature has been requested by a number of GTD'ers. I will try and add it to a future release.

- Ron Morrison
So, a bit of patience is required for now. And since I'm a very impatient softwaredeveloper who thinks he's the only one who actually writes decent software, I started a widget of my own :). Still under development, but I might post it here if it's finished.

7. Software overview

The software I'm currently using:

8. Links