Shortly after getting my iPhone 3Gs, I decided to move my online life into Google Apps. One big reason for this is the exceptionally bad spam filtering by the e-mail server at work. It’s so bad that I’ve become very dependent on client-side filtering.
Unfortunately, the iPhone mail app can’t filter spam, so I was often getting spam in my inbox when checking mail remotely. If I had a desktop computer, the easiest (though least environmentally-friendly) solution would be to simply leave it on with Mail.app running at all times. That way my client-side filters could filter spam via IMAP. As it turns out, my primary computer is a MacBook Pro, and it’s often offline. Thus, I needed a different solution.
I ultimately decided to redirect my e-mail to Google and let their spam filters sort things out. Beyond exceptional spam filtering, this approach allows me to keep my calendar and contacts “in the cloud” and accessible through a single login. With the help of the (mostly) excellent Google sync functionality (along with a couple of workarounds), I’m able to keep everything in sync (over the air, no less) between my laptop, the Google cloud, and your iPhone.
What follows are some notes on the setup process…
Configure your iPhone for use with Google Apps
Instead of regurgitating everything here, I’m simply going to point you to the resources that I used. For starters, check out this excellent guide to setting up Gmail IMAP for use with Mail.app and your iPhone. Next, check out these two posts for info on getting things to sync properly: one, two.
Once your e-mail is taken care of, it’s time to set up your contacts and calendar. As noted above, I’m using Google Sync for OTA synchronization of both my address book and calendar. Just follow Google’s instructions, and everything should go fine.
In order to get my laptop into the loop, I initially tried Calaboration for iCal synchronization. This worked great, but I started getting duplicate e-mail notifications of some appointments (both iCal and Google Calendar were e-mailing me). Thus, I’ve switched to just subscribing to my Google Calendar with iCal. The limitation here is that I can’t actually make changes from within iCal, but that’s okay with me. It’s perfectly fine for quick checks of my calendar without logging into Google or whipping out my iPhone.
The biggest limitation I’ve found is that Google Sync isn’t capable of going between your Google Contacts and the Address Book on your local computer. Thus, while my contacts sync back and forth between Google and my iPhone, my laptop is completely out of the loop. My solution has been to use Googaby, which automatically pushes any Address Book changes (including groups) to Google Contacts. This all happens in the background, whether or not Googaby is running. From there, they sync OTA to my iPhone (minus the groups).
The primary limitation with the Googaby solution is that I have to manage my contacts solely from within Address Book and let the changes propagate from there. Once again, that’s okay with me, but it might annoy you.
Note: If you’re looking for a Mail.app spam filter that runs circles around the built-in Junk Mail filter, I highly recommend Spam Sieve.
Update: I’ve since dropped Mail.app in favor of Mailplane, which is essentially a turbo-powered Gmail interface that supports drag-and-drop attachments, multiple (automatic) logins, etc.