I have a confession to make: I'm a PIM dinosaur. My appointment list resides in an ultra-minimalist GTD app I wrote as an exercise in HTML5 local storage. Even though it runs on my Android phone, it has no alarm function (did I say it was HTML5?). It's just a list of appointments I have to actively look into.
Of course, the phone has a native calendar app. Back when I had stock firmware it demanded my Google account details before it would talk to me. My appointments are none of Google's business (despite what Google may think) so I stayed away from the app. Now that I run CyanogenMod it asks about my MS Exchange account. Let's just say I don't do MS Exchange.
An alarm would be nice, though. Syncing with Kontact on my notebook wouldn't hurt either. Since I'm in the process of building a new home server, I considered fixing my calendar woes as well.
My research turned up several interesting facts:
- The Android calendar can be backed by anything which says it's a "calendar service".
- The default calendar service on my phone talks ActiveSync - the MS Exchange calendar synchronization protocol.
- Other groupware tools besides MS Exchange talk ActiveSync.
- Zafara with its Z-Push connector looks the most mature.
- Other calendar services for Android exist.
- The Kolab connector appeals to me since Kolab is friends with Kontact.
- Another interesting choice is a CalDAV service which should talk to any CalDAV server.
- There are a ton of CalDAV servers including a CalDAV module for Apache.
- There's also a calendar service backed by an iCal file right on the phone.
It seems I first need to decide whether I would actually use the syncing capability of a server or whether it's best to choose the iCal option and forget about a server altogether. Continued in part 2.