Backend comparisons: Exchange, Google, or MobileMe

Whether you are a small business or a family, everyone needs the same three things:

* Email ideally from your own vanity domain, whether it is myname@tongfamily.com or myname@igncap.com, while having a @gmail.com or @me.com is nice, we all want our own identity. And we need lots of disk space, at least 2GB per user. Have wireless sync on iPhone or to Mac Mail.
* Calendar. I need to see someone else’s appointment and also have a shared calendar for common appointments. See them in colors on the iPhone or Mac iCal
* Contacts. Have contacts that are the same between your iPhone and your Mac Address Book.

h2. MobileMe

Most of this is pretty easy, email works fine, but doesn’t allow vanity domains, so everyone has to use foo@me.com

For Calendar, the answers are complicated as usual, here is one view

Calendar Sharing using .Mac/MobileMe – AppleInsider

Here’s the setup:

Mom: has shared calendars S1 and S2
Dad: has private calendars A1 and A2, and shared calendars S1 and S2
Kid: has private calendars B1 and B2, and shared calendars S1 and S2

As it currently stands, Dad & Kid can subscribe to a published calendar from Mom, but can’t alter it. You have to log in as Mom to change S1 and S2, and then Dad & Kid will get the changes.

But… if you’re on an iPhone, you are one of Mom or Dad or Kid, period. You can’t switch user profiles or accounts, period.

Mom’s phone cannot have any private calendars or contacts. Dad & Kid can’t change the calendars and contacts they share. Bogus.

The reason for this is that the syncing isn’t live on MobileMe – if Dad makes changes, and Kid makes conflicting changes, and alterations hit the server at different times, who wins? (ie, Dad moves an appt in their view from Mon to Tue. The change is only local until they resync with .mac. Before they do, Kid moves *the same appt* from Mon to Wed. They sync first. Now, when Dad tries to sync, the server can’t find the appt on Monday to move, because Kid moved it already. Oops. Confusion reigns.) Push sync alleviates this, since changes are live.

If Dad & Kid can subscribe to a *live* version of S1 and S2 though, using the live push, then syncing is automatic, and more or less instantaneous (there are still boundary cases, of course, which I’m sure someone will toss up as proof of why this could never work… those can be worked around), and you get true shared information.

The current Publish/Subscribe model won’t work for iPhones if the users want to be able to change the shared data as well as view it.

So how does each one of these do?

h2.

Hosted Exchange. Well, this isn’t too bad, you can share contact and calendars with iPhone thanks to the ActiveSync. It mainly flunks on connecting to the native Mac Mail, Address Book and iCal. You have to use Entourage

However, Snow Leopard, the next release of Mac OS X will have ActiveSync on the Mac. That means, Exchange ironically is probably the best choice to host mail.

A less higher run alternative is Kerio. This emulates ActiveSync so in essence, could also be a replacement. Net, net, ActiveSync looks like a defacto standard that Mac and iPhone will talk with natively. That is great news. And probably the most likely alternative.

h3. Google

Well, this theoretically should be the best choice. Gmail is the nicest email on the web interface. However, each of the development groups for mail, contacts and calendar is completely different, so today there is no way to sync with iPhone and Mac and also allow shared calendars. Here is the exact state:

* Mail. This is fine, Google supports imap for free with all gmail account and with Google Apps, you can have a vanity domain name work with gmail interface.
* Calendar. Things get worse here. While there is a google sync for the blackberry, there is no sync tool for the iPhone and google doesn’t support activesync. I have tried a third party Nuevasync, but like most third party things, it doesn’t work well. For sharing of calendars, Google has the richest set of multiple calendars and it works superbly on the web, but when syncing with iCal, it uses Webdav, which is pretty buggy causing iCal to crash quite a bit. But it does allow sharing both read-only and read-write.
* Contacts. The reason none of this works. Google contacts don’t have notion of first name or last name, it is one name field, so iPhone’s get confused for sure. They have a Google to Address Book sync, but this manual and uses the really buggy native iSync on the Mac. You want to avoid that at all costs.

Net, net, my money is on waiting for Snow Leopard and then going to a hosted Exchange.