Syncing Private and Work Tasks, Calendar and Contacts

When you’ve got a setup with a home computer, a work computer and a PDA, you’ve got a syncing challenge, at least if you’re using some GTD-like methodology for organizing your life. After fiddling around with various non-working solutions, I’ve finally arrived at one that works for me. My system setup is one home computer with Windows Vista SP1 and Outlook 2007, one work laptop with Windows XP SP3 and Outlook 2007 and Exchange, and a mobile phone with HTC Touch with Windows Mobile 6.0.

My basic requirement is that private tasks, calendar and contact entries shouldn’t appear on the work computer (or Exchange Server) at all. Marking them “private” isn’t good enough for me (I know what a computer administrator can do… 🙂 ). So now, I’m setting a category “Work” on all items that I want synced to my work laptop. In addition to those, I also make the category “@Office” sync to that computer. This way, I turn the security situation around too, by requiring things to be marked in order to exist on the work computer, insted of marking them private if the aren’t to be shown on the work computer.

So, what’s the technical solution? The basis is the well tested synchronization mechanism represented by Windows Mobile Device Center. It syncs between my home computer and my PDA (Windows Mobile 6.0). For syncing between the PDA and the work computer, I use the software PDAsync from Laplink. It didn’t work for syncing from two sources, despite many rounds with their very helpful support organization. Events and tasks weren’t synced correctly, and I had to do “full synchronization” now and then having to deal with lots of duplicate events (none were lost at least). From PDAsync I get the ability to sync based on a filter, such as on the category “Work” and “@Office”, so only those events, tasks and contacts get onto the work computer. Problem solved!

Making sure that work events, tasks and contacs are marked “Work” is of course a bit annoying, but it’s manageable: now and then, I visit the category view on the work computer, and check if something isn’t marked.

Using my Outlook 2007 macros for GTD helps a lot, too.

Update 2008-10-29: You can get into trouble using this solution, too. Now I did. I’ll be back when I’ve got something better!

Getting Things Done with Outlook 2007

Now, the macro package has its own web page, so the information here won’t be updated from now on (2009-08-30).

The other week, I installed Outlook 2007. I knew that my GTD Outlook Add-in wouldn’t work perfectly after the installation (see this link), but somehow, I hoped that perhaps for me, it would work well enough. To make a long story short: no, it didn’t. And I didn’t want to go back to Outlook 2003.

Fortunately other people had this problem before me. Several of them had written macros of their own to do what they missed from the GTD Add-in, for example Simon Guest and Omar Shahine. Their solutions didn’t completely fulfill my requirements, though, and I wasn’t that interested in support for filing my mails automatically. Rather, much of the time I find myself creating several next actions out of one and the same email, so it’s just annoying if I have to go to where the mail was filed to do that.

Inspired by their VBA code, I created a macro package of my own (see below). If you run the function “SetupLeanGTD”, you’ll get three buttons on the toolbar. One for “Next Action”, which creates a task, and immediately prompts you for a category (where you have to add all your different kinds of actions), unless you’re positioned on another task. Then you’ll inherit the category from it. The “@Waiting For” category is treated specially; there you’ll get a prefix with name and date for free.

One button is “Act on Mail”. That one creates a task, attaches the mail to it, and prompts you for a category. It cleans up the title (removes “Re:”), too. And for “@Waiting For” tasks, it adds the recipient and the date to the task name, like for the task.

The last button is “Schedule Mail”. It creates an appointment, and attaches the mail to it.

None of the buttons do anything about the mail; you have to file it yourself, wherever you like. For me, that’s an advantage, since often I’d like to create perhaps two actions from a mail.

Don’t forget to add a rule so that all your sent mail gets into your inbox, too, so that you can easily make actions from these, too.

So, finally, here comes the code. Comments and improvements are welcome!

Download LeanGTD2007.bas

Updated 2006-12-07: Added better error handling.

Updated 2008-08-19: Added support for tasks with multiple categories.

Updated 2009-06-13: “Companies” is copied from the selected task, just like with categories.

Updated 2009-08-15: Tasks are created in the same folder that the selected task is in. Some code cleanup.

Updated 2009-08-20: There’s a problem if you select the “todo list” folder instead of the “Tasks” folder, when you create a task with another task selected (because you can’t create a task there). I’ll upload a fix today.

Updated 2009-08-20: Problem fixed! User manual added to the source code file.

Updated 2009-08-21: You never get your own name as the one to wait for in a @Waiting For task. Unless you put it there yourself, of course.

Updated 2009-08-28: Now the macros work for any item, not just mails. And the buttons are put on a command bar on their own. When scheduling a mail/an item, you get a prompt if you want this to be an all day event, and if you say yes, there’ll be no reminder for it.

Updated 2009-08-30: Future updates to the code will be noted on the new home page for the package.

Qtek 9100

Just before Christmas, I got my Qtek 9100, a Windows powered smartphone. A really nice gadget!
It runs on Windows Mobile 2005, so of course you need to be kind to it, and avoid doing stupid things. Before I realized that, I had to perform one "hard reset", erasing everything I had installed so far (except for what was on the storage card), but after that, everything has been working just fine.
At first, I had some problems with ActiveSync synchronizing tasks incorrectly, but I think that problem finally corrected itself (or it’ll show up later, we’ll see!).
So far, I’ve installed and run Skype, VNC, Pocket PuTTY and .NET Compact Framework 2.0, without any problems.
The most stupid thing I’ve done with it so far is to try to use it for my shopping list. It took me twice as long to get what I wanted, because the list went in alphabetical order instead of in the order of where things are placed in the supermarket. And holding the Qtek with one hand while trying to put apples in a plastic bag isn’t exactly easy (the stylus and the apple in the same hand, of course). Not recommended!

[Update, 29th of December] Well, I’ve installed Skype, but it doesn’t work very well. I think that the CPU frequency of the Qtek is too low, actually, just 200 MHz. We’ll see if there’ll be a Skype update optimized for the Qtek. Let’s hope!

Offline Task Handling Application

In a recent post, I complained about Ajax applications, in particular Remember the Milk, and how the requirement to have an online connection at all times makes it impossible to handle your tasks whenever you want to. I really needed an offline-able application for that! And I hoped that it wouldn’t be Outlook, because I felt it’s not flexible enough. But turned out to be Outlook after all!
I checked out David Allen‘s GTD plugin for Outlook, and now I’m sold on that one. The only problem was that I first needed to get a backup routine in place in order to consider Outlook a "trusted system" (which Remember the Milk is unfortunately not).

Ajax and Smart Clients

We’ll soon be having an interesting conflict between the recent Ajax hype on one hand, and the trend of "smart clients", which includes "offline capability" in its tenets, on the other hand. I found myself complaining today about the otherwise nice task list application "Remember the Milk", which is Ajax based, and thus available online only. Well, I was on the train, and the GPRS connectivity was very bad. And I wanted to administrate my tasks. Well, luckily, I’ve got OneNote as a spare. But after this experience, I’ll be looking for a task list application which is usable offline as well. I’ll let you know what I find (I hope it won’t be Outlook…). Ajax clients are definitely not smart, and it’s hard to see what we could do, architecturally, to make them smarter.

Smarter To-Do-Lists

So, you’re already using OneNote for keeping track of everything in your life. But perhaps you’re not getting everything done that you’d like to, anyway? That’s a trap that I fall into every now and then. To-do-lists become obsolete, and you just look at them and don’t care about what’s on them, because you’ve seen it so many times already. But here’s some help in how to keep a to-do-list that never grows obsolete. It’s a post by Merlin Mann, in two parts.

Building a smarter to-do-list, Part I
Building a smarter to-do-list, Part II

I like his way of approaching this psychologically! I guess the biggest obstacle, as usual, will be to actually do this stuff.

Using OneNote

Chris Pratley‘s got a nice post on how to use Microsoft OneNote. If you’re not already using it, give it a try! It’s invaluable for organizing any work having to do with software. Or your private life. Or just about anything!

Are you a "filer" or a "piler"? I definitely belong to the largest category of people mentioned in the post; I pile first, and file later.