I usually keep my editorial opinions off my tech blog, and post them in Gordon’s Notes (tech) instead. This one’s a bit of an exception.
I’ve been spinning cycles thinking about why Apple’s MobileMe and synchronization solutions are so miserable – and why they’re not improving.
Incompetence alone is not an explanation. Yes, Apple uses early adopters as beta testers, and yes, the MobileMe launch demonstrated Apple has serious internal issues, but they’ve still got good people.
Marketing is not an explanation. I can’t imagine any reason why Apple would not want MobileMe calendaring and synchronization to be a wonderful experience that would tie their desktop and phone customers ever more closely to Apple.
That leaves one explanation. Synchronization Hell.
The fundamental problem with “synchronization”* is that computers are not yet super-sentient. If a transaction hub had full knowledge of the world, and an IQ of 150, and lots of time to think things over, it could figure out how to translate an “all day event” represented as an attribute on a day to one represented as a “24 hour event” with a buggy representation of time zones and daylight savings time.
We’re not there yet.
It’s impossible, in the sense of mathematically not possible, to perfectly migrate data between systems that represent the semantics (meanings) of the data differently. Small discrepancies are amplified with each synchronization. Things get left out. Not only are the results inexplicable to users, they’re inexplicable to engineers.
In Apple’s case they’re deeply stuck. They have desktop systems running 10.4 and 10.5 that they’re trying to support, each with somewhat different models for calendar items, contacts, and tasks. (Let’s not even mention the horrors of the Mail.app vs. iCal.app task fiasco). The iPhone has yet another data model for Calendar and Contacts, not to mention Notes (but no Tasks). The iPhone has to “sync” with Outlook (when Exchange is not present) and iCal/Address Book (OS X) and MobileMe and Exchange Server.
The solution is to surrender to Microsoft and accept the Exchange Server model of the world. Yes, Microsoft’s monopoly is not dead.
So in OS X 10.6 everything adopts the Microsoft Exchange Server data and semantic model of Contacts, Tasks, Notes, Calendar events, etc. At that point MobileMe, the iPhone, and the OS X desktop will align. That’s probably good news, though users of PPC machines may be out of luck**.
“Snow Leopard” is probably coming out later this year. I don’t think MobileMe and the iPhone will give us the basic PDA functions we need until after 10.6 is widely available.
* In the world of HealthCare IT, where I live during daylight hours, the equivalent words are “mapping”, “messaging” and “interoperability”.
** It’s generally assumed that 10.6 will be Intel only. I would not be surprised if Apple has not yet made a final decision.