May Contain Blueberries

the sometimes journal of Jeremy Beker


Good morning everyone. I thought I would share a technology solution to a problem I have been facing with calendars. Up until a year or so ago, I was generally anti-calendar. This was not really a technology problem, it was a bandwidth control one; it was my belief that if I had so many things going on that I couldn’t keep them in my head, it was too many. This was probably foolish, but it worked for many years. My life tended to be “event driven” so many things I didn’t have to plan towards. But as I have moved on, expanded my social circle, expanded my work activities, and frankly, gotten older and slower, this method didn’t work so well. As an example, here is a week from my work calendar:

![Example work calendar](/images/calendar_small_shrunk.png)

So keeping it in my head is not going to happen.

Here is the landscape I am trying to manage as it stands now:

  • Calendars I pay attention to:

    1.  My personal calendar 2.  My work calendar 3.  My travel schedule (provided by the awesome [TripIt](http://www.tripit.com), highly recommended) 4.  Shared calendars for Tiffany and others
    
  • Devices I use:

    1.  Personal computer at home 2.  Personal laptop 3.  Work laptop 4.  Personal iPhone 5.  Work Blackberry 6.  Other internet enabled computer
    
  • Another item of note. I don’t want to use something web-based all of the time. I like desktop applications (iCal by choice, Outlook by necessity at work), so supporting those is critical.

I initially solved the problem of dealing with calendar 1 and devices 1, 2, and 4 by using Apple’s MobileMe. This worked very well for syncing those devices but it fell down in trying to sync external calendars (like 3 and 4) or getting it to other devices. (I still use MobileMe for keeping bookmarks and contacts in sync, for which it is great.) It also had no way of getting my work calendar in place.

As is unsurprising, I finally settled on switching over to Google Calendar as the central repository for all my calendars. It has worked very well, with only one hack to get a limitation of Google’s Outlook sync to work right, but more on that later. So here is my solution:

  • A central Google Calendar account. It contains:

    *   My personal calendar as primary *   Subscription to my TripIt calendar *   Subscription to friend's calendars *   Subscription to secondary Google account for work (see hack below)
    
  • Google Sync for my iPhone with visibility to any of the calendars above.
  • A secondary Google Calendar account to sync for work using Google Calendar Sync. I had to create a secondary Google calendar account for this because the current version of the Google Calendar Sync only syncs Outlook with a primary google calendar, which is my personal calendar. I didn’t want to mix my personal calendar items with my work ones. By having Outlook sync with the secondary Google account, I can keep them separate. Additionally, I only view work events through Google, so the extra hop was not a problem.
  • Google supports CalDAV integration with iCal. This allows me to see and edit all of my Google calendars through iCal.
  • Outlook can get a read-only copy of my personal calendar via a private feed allowing me to view it in Outlook.

Phew. Make sense? It isn’t really as complicated as it sounds, I promise. With the exception of the hack to get Outlook data up into the system, my primary Google Calendar account sits at the center and everything else syncs with it.

So, this solution works for me. I am currently investigating how to maintain to-do lists through the system. Google has them, but I don’t yet know how they will sync across the system. Also looking at Remember the Milk which also integrates with Google Calendars.

I hope this information is useful helping someone else set up a central system without all the fuss I went through to get here.