Mobile phone software sucks

Case-in-point: I recently bought a new phone. I ended up getting a Motorola, partly because one of the features it supported was SyncML, which is a standard protocol to sync contacts and calendar entries to your PIM application etc. You might naively assume that you can just plug it in to your computer (or even use that fancy bluetooth link) and away you go. But no, it turns out that it only supports SyncML over the air, using GPRS data and making you pay your mobile carrier insane data charges every time you want to sync. How retarded is that?
Apparently Motorola think this is a feature, because when those stupid users don’t have the opportunity of syncing with their desktop they don’t have any chance of screwing it up. Right. Those would be the users buying the phone then would they?
So anyway, after being pissed off about this for quite a while, I decided to do something about it. It turns out that there is a (mostly undocumented) set of extended AT commands to read and write phone book and calendar data. And so, after much frustration at how brain damaged the internal representation of this data is (I’d love to know how they implemented SyncML), I present to you an OpenSync plugin that does the job. The phone has some pretty serious limitations about what it can store, especially in the calendar, but I’m using it now and it actually works ok.
It’s amazing how much you can get done when you have an impending paper deadline to procrastinate for 🙂