This week marks the end of the weekly SyncML team call we've been having for nearly two years, which signifies a conclusion to the project. Every Sun employee can now synchronize contacts, calendar, and tasks over-the-air to any device that supports the SyncML protocol. It took much longer than anyone on the team expected, but in the end we pulled it off, and in the process, I learned a lot about the troubles with calendar formats, access protocols and synchronization.
Although I have much respect for SyncML for bringing an open standard to a space which has been mostly proprietary, I'm becoming more convinced that CalDAV with a remote calendar is a better protocol than SyncML with a local calendar for bringing calendaring to mobile devices.
I realize CalDAV is not designed specifically for mobile usage, nor is it capable of synchronization, while SyncML is like an arbitrator who settles differences between two parties engaged in a scheduling dispute. But there wouldn't have been a dispute in the first place, if all parties had read/write access to a master calendar on the network. That's what CalDAV does: it employs a client-server model, intrinsically enabling distributed access to centralized data and thereby eliminating the need to sort out differences.
Due to higher chances of data corruption as the number of synchronization devices increases, we have to warn our users if they use, in addition to SyncML, another synchronization method, such as Outlook Connector, Apple iSync, or Palm Desktop, they're assuming risks on their own. We recognize this is not a realistic proposition, but it is a limitation of calendar synchronization.
Even for those who only use one device, and therefore are not interested in synchronization or distributed access, CalDAV still brings advantages over local calendar. By storing your schedules in the cloud, your data is independent of the device, should it ever gets lost, replaced, or stolen, your calendar is still safe and can be easily transferred to the replacement. Another benefit is the ability to share your calendar with your family, friends or clients, and vice versa.
From a business perspective, mobile network operators and internet service providers looking for ways to retain existing customers could offer CalDAV as another feature to incent subscribers to renew service contracts.
With CalDAV adoption gaining traction among major players, I think we will see CalDAV clients being developed on mobile devices in the near future, supplanting SyncML and local calendaring, just like how IMAP is wiping out POP as the preferred way to access Email.
Sidenote: I'll be attending the CalConnect event in Menlo Park next week, Feb 4-8th, as an observer. If any reader will be at the same event, I'd love to hear your thoughts in person!
[UPDATE Feb 1, 2008] Another downside of local calendar is that most mobile devices do not have enough memory to store every event accumulated over the years. CalDAV could solve that by storing the entire calendar on the server where storage is ample, while the mobile client would simply keep an essential subset based on its memory limitation.