Recently while talking to a friend I said something like "Oh, yes, my wife send me a meeting request for that." My friend was shocked. "How did you get your wife to send you Outlook Invites?" they said.
I was surprised they thought it was a big deal that we might manage our lives and appointments the same way a business runs their meetings. Why manage one's calendar with attention and detail at work, the use a Post-It Note or a Dry Erase board at home? Each to his or her own, to be sure, but ultimately find a system that works for you.
Don't give me the standard "Wow, that's a lot of work to set this up" comments. This took all of 10 minutes to do, I'm just being extra detailed for those who like their instructions along with pictures, clear steps and a little philosophy and history.
Here's what works for us and how we set it up. I talked about it in Podcast 58 on Synchronizing Your Internet Calendars.
Basics in a Nutshell
This is the setup my wife and I have. I sync portions* of my calendar with a web calendar. Each of us can see each other's calendars as she subscribes to that calendar. My Outlook is my work email address, and I also have my personal email. She can send me Meeting Invites to either account. When I accept them, they'll show up in both places.
On Calendar Sharing
I'm using Outlook and The Wife is using Google Calendar, so this post uses those two products as an example. That's useful because they are both very common, and the combination is common. Also, it's nice to see Microsoft Products working with non-Microsoft Products using Open Standards.
However, the most important philosophical point to get from this section is that whatever service you are using, make sure you pick one that allows you to have control over your data and how it's published. Data Portability is important. You want to make sure you can get your data in and out of your chosen store. Preferably that'll be using a format like iCalendar (RFC 2445). Just knowing that the standard exists is empowering, because now you know what to look for.
Sharing (Publishing) in Outlook 2007
In Outlook, there's two kinds of Calendar "sharing." There's Sharing and Publishing, in fact. Sharing in Outlook language means to Share your Calendar internally to your company's Exchange Server, while Publishing means to send your Calendar out to the Internet. By default this means to calendars.office.microsoft.com, but it can mean elsewhere.
TIP: I put my Free Busy info at http://www.hanselman.com/freebusy which just redirects to the Office site. This makes it easy for others to schedule meetings with me without giving away personal information or calendar details. I just publish free/busy time.
You CAN, if you like, publish your calendar out to the Internet as an ICS file, also called a "webcal" and then have other calendars pull from that. However, I prefer to have more control over what I publish, as I've got work meetings and things I may not want out of my Outlook.
SyncMyCal or Google Calendar Sync
I want to part (or all) of my calendar into my wife's calendar. She uses Google Calendar, and I've got a Google Calendar using my personal email address.
In order to get my appointments into Google Calendar, I prefer to use SyncMyCal software (I paid $25 for it). There is another free tool from Google called Google Calendar Sync but it's VERY basic. I prefer SyncMyCal (enough to pay for it). It's an addin that runs inside of Outlook and it supports multiple calendars, can sync a specific Outlook category (like just Personal events), does date-range-filters, and will sync Contacts if you like.
Public Calendars and Subscribing to Calendars in Outlook
There's lots of sites that have lists of events and calendars. The best of them, like Upcoming.org include webcal/iCal/xCal feeds for all the events. Most personal web-based calendaring systems like Google Calendar (and my wife's calendar) have URLs that you can subscribe to.
For example, the Subscribe button on the Upcoming site includes an iCal option. These URLs look like:
Even though they have webcal:// at the beginning, they are still serving the calendars over HTTP. However, the webcal:// "psuedo-protocol" is a hacky way to get something to happen when you click on it. Because I have Outlook installed, clicking that iCal link gets me this dialog:
Clicking yes adds a new calendar to Outlook in "Other Calendars."
This is how I add all sorts of calendars into Outlook. I've got Team Calendars from Sharepoint, Calendars from our Intranet, as well as the wife's.Any calendar can be viewed side-by-side with the main.
Or, I can overlay them. This is really useful for viewing The Wife's calendar and finding time where we can both free. The secondary calendar appears "ghosted" and overlaid over the primary. You can even show multiple (6, 7, etc) calendars and easily find time for meetings amongst your teammates.
Consuming Web Calendars from inside Google Calendar
If you've got a calendar "in the cloud" with a URL to an ICS, it's easy to add them to Google Calendar. In Calendar click "Add" under Other Calendars and click "Add By Url":
This is where you'd paste in the iCal URL for the calendar you're trying to consume. The wife does this with public calendars. For family there's a faster way. Just click on your calendar and click "share this calendar" and Google takes care of the rest.
IMPORTANT NOTE and CYA DISCLAIMER: It's ironic that while I've been using various plugins for Outlook Calendar synchronization for the last four+ years and never lost a thing, this week while on a trip (and while writing this post) I lost (almost) all my future appointments. Because I'm using SyncMyCal along with three different other experimental plugins, not to mention syncing with Mobile Devices, my gut says it's not SyncMyCal. However, this near-data loss is an important reminder that there's always a chance you can lose something important when you're using any synchronization software that syncs deletes.
I got my data back by going to another machine I had with Outlook on it, launched Outlook and immediately put it into Offline mode so the deletes from the server wouldn't come down. I exported that range of missing appointments from that machine and imported them to another. The final calendar was then updated in Exchange. Crisis averted, but it was a scary time. If you lose your data, I can't help you. Be careful.
* filtering out private/sensitive/NDA work meetings via categories