Archive for October, 2007

Yesterday I wrote a post why I prefer to use plain text files for my ToDo-lists instead of some fancy software. Shortly after publishing the post I came across a brand new application from Hog Bay Software called TaskPaper that might just give a new spin on the things I said yesterday.

To summarize my opinion about TaskPaper:

If you want (almost) the flexibility of plain text files with just the right amount of user convenience,
TaskPaper might be the solution for you.

Here is a screenshot from TaskPaper, displaying a file similar to the one I used yesterday:

TaskPaper Screenshot

 

Even though Hog Bay Software had a different idea how to organize projects, I could still use it the way I prefer to do things. TaskPaper is not forcing me into a workflow that doesn’t work for me. A big round of applause for Hog Bay for not telling me how I have to organize my life!

Another big advantage is, in my opinion, that TaskPaper’s data file is just a plain text file. So I will always be able to access my data - even if TaskPaper is for some reason not available. So for example syncing the file to a PDA and edit it like a plain text file should not be a problem.

So - what kind of convenience does TaskPaper add to using a plain text file?

Adding what is called “Projects” in TaskPaper can be done by clicking one of the buttons at the top, or using a keyboard shortcut. Adding tags to your tasks works just the same way. In order to mark a task as “done” you can just click on the little “bubble” and the tag “@done” will be added, like in my task “Prepare papers for budget meeting” above.

The main disadvantage I see so far: It is not possible to “fold” sections of your data file like in BBEdit. So keeping the overview in a very long file might be a bit dicey. On the other hand, it is possible to jump between Projects with the click of a button, so navigation in a big file should not be a problem. This is similar to the menu in BBEdit to jump between headers, as shown in the following screenshots:

Navigation between Projects in TaskPaper Project selection in BBEdit

TaskPaper

BBEdit

TaskPaper is free to try for 15 days. Afterwards it’s $18.95 as an introductory offer, later probably something like $27.95.

GTD (short for Getting Things Done by David Allen) is by far the best known concept for Personal Productivity and Time Management. After trying to organize my tasks according to those principles I can’t imagine how to get through my days without it.

But not everything is fine and dandy. After attending a session about GTD at a conference I realized, that many of the problems I have with this system are very similar to those of other users.

One of my challenges was that I was always on the prowl for the best software to implement my ToDo-lists (my favourite GTD tool is by the way iGTD). The challenge in this process was that I wasted a lot of time, trying to adjust my process to the software. Never mind the time I wasted switching all my tasks from one great software to the next.

I found it very interesting that this was the same problem for other users, especially Software Engineers, always on the search for the perfect tool. At the above mentioned conference several people mentioned that they finally found the perfect solution: just use plain text files. The advantages seem obvious:

  • Highly adjustable to each individuals needs
  • Never worry about software upgrades or a different operating system. Some kind of text editor will always be available, even after upgrading from Tiger to Leopard. So you will never loose your precious lists, as long as you have a backup system in place (you do, don’t you?)
  • Synchronization with PDAs, dot Mac accounts and what-ever-you-can-think-of is always possible somehow.
  • It’s easy to use Quicksilver to add new items to the list - just use “Prepend to…” from the Text Manipulation Actions plug-in.

So I changed my GTD system to plain text files and never looked back!

As it turned out just one file was enough for my needs and here is an example how it might look like:

Picture of my GTD file

For me - this is all I need. My real file is of course a lot longer (currently approx. 900 lines).

So, let’s look at it in more detail. The file has four sections:

  • TODAY
  • CALENDAR (It doesn’t really matter how far in the future your calendar goes, as long as it’s far enough for what you need)
  • FOLLOW UP
  • SOMETIME/MAYBE

Here is how I usually work with this file:

  • The first thing in the morning is to move all tasks for today from the CALENDAR to TODAY. Now the first day of the calendar should be tomorrow.
  • If I finish a one-time task I just delete it from the file.
  • If I finish a recurring task (like paying the mortgage) I cut-and-paste the task to when it occurs next in the calendar.
  • If I have to wait for somebody else I cut-and-paste the task to FOLLOW UP

That’s it in a nutshell. This handles 99% of everything I need to do.

Now, here are some minor tricks which makes working with this system easier:

  • I named the file “_gtd.txt”.
    Note the underscore in the beginning of the name! The reason for the underscore is that this file will always show up at the top if I list multiple files in alphabetical order (like in the documents list of BBEdit).
  • The “syntax” of my file is something like an over-simplified markdown syntax.
    I chose it this way for one important reason: My editor of choice is BBedit, a text editor that supports code folding. So if I define my file to have a markdown syntax I can fold sections of the file. So even if my calendar goes two years into the future, I can just fold the months and have a neat and small(ish) file.
  • I added an indicator for the start of each “Week” to my calendar. This is mostly to have an easier frame of reference when I’m inserting a new task.
    For example: Adding something for this week’s friday is quick and easy, without having to look at an external calendar to find out which date we have on Friday.

Using a Microsoft keyboard with a MacBook is possible but has one major drawback: The “Option” and “Command”-keys are exchanged and called “Windows” and “Alt”-keys.

Fortunately swapping the keys so that the “Command” and “Option”-keys are in the same location like on an Apple keyboard is very simple:

  1. Open your “System Preferences”
  2. Select “Keyboard & Mouse”
  3. Select the “Keyboard”-tab
  4. Click on “Modifier Keys…”

In the resulting dialog map the Option Key to “Command” and vice versa. This is a screenshot made with Tiger, the dialog in Leopard looks a little bit different:

Key Mappings

Voila - that’s it. Now the Microsoft keyboard should behave just like an Apple keyboard.

Now, for one additional problem (if you are still using Tiger or before):

I am using my MacBook Pro in my office, so I’m frequently connecting and disconnecting my keyboard. Since my external keyboard is an ergonomic keyboard with Microsoft keys I would have to change those settings each and every time I connect or disconnect the keyboard. This is only the case if you’re still using Tiger or before, because in Leopard you can set the keys for each keyboard type as shown in this screenshot: Keyboard settings in Leopard

One solution is an AppleScript, which I found on the following website:

Change keyboard modifier keys automatically on OSX with Applescript

Now I have a Quicksilver Trigger to execute this Applescript, which makes the swapping of the “Command” and “Option”-keys quick and painless!