I want to sync my calendar across all my Macs and iOS devices, give my wife access to my calendar (and have access to hers), and do it all without paying for Apple's MobileMe. For that, Apple's iCal just won't do. Still, I like the iPhone's Calendar app. With the free Google Calendar, I found a scheduling solution that lets me keep myself organised, continue using the iOS Calendar app, give my family and coworkers easy access to my availability, and easily add new appointments from anywhere. Here's how I set things up:
Step 1: Create a Google Calendar
Create a user name and password. Then log in to Google. You're presented with a big blank calendar as soon as you click into the site.
To add an event, click on the day in question. In the Event pane that appears, add the event's name. Click Edit Event Details to open a window where you can type in the time and other information. Click on Save when you're done.
Step 2: Give it its own window
You could simply load up Google Calendar in your favorite browser every time you need to check your schedule. My preference, however, is to keep a window entirely and exclusively devoted to my calendar open at all times.
To do so, I use Todd Ditchendorf's excellent Fluid (free). With Fluid, you can create what's called a "site-specific browser," which is a stand-alone app dedicated solely to the site in question. To set up your Calendar Fluid app, follow these steps:
a) Download a good Calendar icon. Chris Ivarson provides a great, free Google Calendar icon here.
b) Launch Fluid, and fill out the single form with the URL for Google Calendar (http://www.google.com/calendar/), a name (I use "Calendar"). When you reach the Icon menu, choose Other and then navigate to the custom icon you just downloaded. Click Create. Fluid will place your newly-created application in the folder you choose (Applications, by default). Find it and then drag the icon into your Dock for easy access.
Step 3: Import your old iCal events
Were you previously an iCal devotee? If so, you can import your old iCal events into Google Calendar pretty painlessly:
a) Open iCal. Go to the File menu and choose File -> Export -> Export. (You'll need to do this once for each calendar you have in iCal in the On My Mac list.)
b) Save your exported data on your Mac.
c) Go back to your Google Calendar, click the Settings menu, and choose Calendar Settings.
d) On the Calendar Settings screen, click the Calendars tab.
e) Click the Import Calendar link, and then choose the exported file you generated from iCal. Depending upon how many events you have to import, this might take a short while, but it's the last step.
Step 4: Sync the calendar to your iOS devices
Now that your calendar is all set up on your Mac, it's time to get it synced with your iPhone, iPad, or iPod touch. Google now offers free support for Microsoft Exchange. (All the iOS devices have supported multiple Exchange accounts since the introduction of iOS 4.) That means that even if your iPhone's already linked to an Exchange account for work, you can still sync your Google calendar with Exchange as well.
The advantage to doing so, of course, is that keeping your calendar synced with Exchange means that you can add events anywhere, and have them appear on all your devices almost instantly. That way, you can tap in the details of an upcoming doctor appointment from the receptionist's desk with the Calendar app, and it will show up in Google Calendar on the Web seconds later.
To get Exchange working, you'll need to replace your existing Gmail account on your iPhone, or create a new one. To do so:
a) If you're a Google Apps user, make sure that your administrator has enabled Google Sync. Either way, as a precaution, make sure to backup your iOS device before you add the new account.
b) On your iOS device, launch the Settings app and tap Mail, Contacts, Calendars.
c) Tap Add Account and select Microsoft Exchange.
d) Type in your e-mail address twice, once in the Email field, and again in the Username field. Leave Domain blank, and of course enter your password. Then, tap Next at the upper right.
e) At this point, you'll most likely encounter an error message ("Unable to Verify Certificate.") Choose Cancel, and don't sweat the error. This is most likely a by-product of how Google implements Exchange, and not an actual security problem.
f) A new Server field will appear that wasn't on the screen before. Type m.google.com into that field, and then tap Next again.
g) Now, you'll be able to choose which Google services you'd like to sync. I sync Mail, Calendar, and Contacts, but you only need to enable Calendar for the purposes of this tutorial.
h) You may be asked what you'd like to do with existing data on your device. Unless you want to completely overwrite your data, choose Keep On My iPhone.
As long as you have Notifications enabled, synchronization will start very quickly. (On your iPhone, tap Settings and then Notifications. The slider switch should say On.) If you already have lots of data in your Google calendar, it could take several minutes for the sync to complete.
Step 5: Take advantage of extras
Now that you have Google Calendar setup on all your devices, take advantage of a few niceties:
Mini calendar in Gmail: Keep an eye on your obligations in Gmail by adding a miniature version of your calendar to the page. In Gmail, click on the Settings link, click on the Labs tab, and then enable the Google Calendar gadget. You'll see a list of events to the left of your message list. Click on Options and choose Show Mini Calendar.
Easier appointment adding: At the top of your calendar there's a link that's easy to over look, Quick Add. Using this, you can create new appointments in plain English. For example, type Meeting with Jason at 4pm next Thursday and a new event will appear on your calendar, with that name, at 4 p.m.
Menubar access: If you want to get really fancy, you can create a second Fluid program. This one will live solely as a Menu Extra, in other words, it will provides access to a slimmed-down view of your upcoming events from your Mac's menubar at the top of the screen. You'll also be able to use the Quick Add option from here. Launch Fluid, and create an app called Mini Cal that points to http://google.com/calendar/m. When you run the newly-created program, go to the Mini Cal menu and select Convert to MenuExtra SSB.
Step 6: Share your calendar
My wife and I find it helpful to see each other's calendars. (That way, we can more sanely schedule repairmen or doctor appointments for the kids.) With Google Calendar, you can subscribe to your spouse's calendar or to anyone's calendar as long as they give you approval.
To share a calendar, click on the Settings link, choose Calendar Settings, and click on the Calendars tab. Choose the calendar you want to share from the list, and then click on Share This Calendar. You'll see the option to either Make This Calendar Public or to Share With Specific People. If you choose the latter, type his or her e-mail address in the Person field, set Permissions, and then click Add Person.
You can choose which calendars sync to your iOS devices by visiting http://m.google.com/sync from each device. I sync my wife's schedule, along with calendars for US Holidays and the Philadelphia Eagles game schedule. From the same Calendars tab you use to subscribe to other calendars, just click the Browse Interesting Calendars link to find many Google-provided calendars that you can add.
Congratulations! If you've made it this far, you're completely ready to go with Google Calendar. All that's left to do now is remove iCal from your Dock.