Wednesday, June 25, 2008

PiM Synchronisation

Holy crap it's been a while since a post. Watch the twitters instead...

I couldn't be bothered to think up a clever title, so I'm going with direct. I've had a thing about calendar, notes, todo's and address-book synchronisation for a while (a few years). I finally got round to trying out various solutions in the last few months, and lots and lots of google searching on various related phrases.

More recently, I have discovered (via a comment in a lugradio podcast by Aq) “ScheduleWorld

. The web interface claims to be web2.0-ish, but is rather clunky and looks like it was developed more for the author than for everyone to use; but it works. The preferences are the hardest to read, but luckily once you have it configured correctly you don't really have to use them again unless you need to reset or do a full/slow synch again.

It took a while after creating the account and doing my first synch from my phone (which has built-in SyncML support handily) to sort out the setup - first off, I hadn't set the time zone which being in the UK is rather important to do as it assumes US otherwise (at least it looks like it as it managed to create duplicates 5hrs earlier of most things.. argh!). There are tools on the site to remove duplicates and if you have multiple address-books/calendars you most likely will want to spend some time checking them as they'll all end up copied to everything else, so you need to merge the fields if it doesn't already and remove all but the master copy.

One limitation at the moment is that it only stores 1 'note' per address-book contact, on my phone the first listed in the entry; so several of my contacts that have directions in notes and also special entries for the series-60 version of Metro to indicate which tube stop is nearest for it's routing feature, or other additional notes don't get fully synched; but it doesn't appear to lose the extra notes when you sync back again, once you've tidied up any initial dupes on the phone with only 1 entry.

It supports the following that I use:

  • Thunderbird Address-book - they have an extension you can have sent to you by mail to make it easy to install (not quite as automatic as in firefox otherwise)
  • Lightning -
  • Evolution address-book/calendar - not tried the plugin yet, but it works with the general syncml-supporting one from what I read
  • Nokia N95 8Gb - syncml's built in, some issues as mentioned above; but now faily happy. Don't get it stuck half-way through a synch, I had some weird stuff happening; and notes with ampersands in (&) got html-escaped and duplicated; awaiting reply in support forums
  • Google Calendar/Contacts - calendar syncs fine now dupes are tidied; contacts used to be supported but not since google changed their API :-(

Now Opera have released 9.5 (which has quite a few improvements) I can use their Opera-Link service to synchronise my bookmarks (and other things - not sessions yet) between my mobile phone's opera-mini, and opera on all my desktops; very cool. I've discovered a nice easy way of continuing browsing a site when I get home after looking at it at work (albeit with loss of history) is to add it to a folder kept for that purpose in my bookmarks (ie. temporary sites); when I get home and start up opera, it synchs and there it is. Maybe I'll sort out an automatic session-save cron job and scp to my home PC at some point but only if it really becomes annoying otherwise.



  1. Good to see you back in the saddle!

  2. Thanks! Yes, it had been way too long.

    The ampersand issue has since been fixed and the project owner/coder said what a great bug report it was. Being a coder you learn about these things from an early stage.

    I've started to get back into hacking and developing things outside of work too, thank Python on S60 for that and Python in general. I think I love it (most of the time anyway)!

  3. Just thought I should mention the conduit project too, especially as they did a talk at LugRadio Live '08 (UK). They really need more UK developers though.