More Mac 101, our ongoing series of tips and tricks for novice Mac users.
Adding Facebook integration to the OS X Contacts application was not without controversy; many of us feared an onslaught of @facebook.com email addresses polluting our pristine data. Assuming you can get past that hurdle, however, you may be faced with another annoyance: duplicate birthdays all up in your Calendar. Here's why they're there, and how to clear them up.
The birthday listings that appear in OS X's Calendar app under the Birthdays calendar seem like ordinary events, the kind you should be able to edit and delete with impunity. Thing is, they aren't. The Calendar app is just putting a friendly face on the real source of the birthday information: your contact data. For every person in your Contacts app with a valid birthday bit of data, you'll see a corresponding Calendars item for that friend (or foe).
While you can manually enter birthdays for your contacts (or strip them all at once using the Birthday Remover iOS app, for the misanthropes), most of us don't have hundreds of birthdays already listed in our Contacts data (although if you ever imported your Facebook contacts via another method, you might have quite a few). Facebook profiles and birthdays, though? That's another kettle of friends. Many of your Facebook contacts probably have their birthdays in their profiles; certainly most of mine do.
One might think that turning on Facebook contact sync would simply match up the Facebook friends with people already in your contact listings, especially if those same-named folks happen to share a birthday. What are the odds? Sadly, it doesn't work that way; it's up to you to remove the duplicated data and match up the contacts to get things nice and clean. Short of turning off Facebook's contact sync in OS X, this is the most straightforward way to deal with it.
Important safety note: the procedure described below will remove birthday data from your local contacts. Please back up both your contacts and calendar data beforehand. If at some later date you turn off Facebook sync, or your friends leave Facebook altogether or stop sharing their birthdays, you will no longer see the dates in either your Contacts or Calendar views. For the majority of your Facebook friends, you may not care about this risk, but I do not recommend removing the birthdays of immediate family, spouses etc. Live with those dupes. It's better that way.
Double-clicking one of these gets me to the detail view for the birthday:
Note the lack of any editing options. That's because the real data lives over in Contacts, so I'll click the Open in Contacts hyperlink. Of course, since I have both a Facebook and a conventional contact for Ged, in my All Contacts list he shows up twice. That's deeply annoying -- and easy to fix. The trick is to select both contacts in the list, then choose Link Selected Cards (Cmd-shift-\) from the Card menu.
In the event that there's duplicates in the local contacts plus a third Facebook contact, I select all three (or more) and the menu item changes to "Merge and Link" as seen here.
Now that I'm dealing with a unified view of the two different flavors of the contact, I click the Edit button at the bottom of the contact detail. Here's the view of the two birthday listings -- one local, one Facebook. I can't delete the Facebook data; in fact, I can't suppress or hide any of the Facebook contact info without totally disabling Facebook contact sync. (This is annoying.) So my only good option is to actually remove my local record for Ged's birthday by clicking the delete button next to that line. Aggravating, but not as aggravating as double birthdays for everyone. So that's what I'll do.
Once the contacts are linked, it's possible I may still want to get to the individual instances to make adjustments or changes. Look at the bottom of the detail where it says Cards and two gray line items; those are actually clickable, not that you'd know it. Clicking one of them will bring up a sub-detail pane that shows only the info from that record.
Finally, if you truly want to avoid any notifications for all those birthdays, you can achieve that (while still seeing them in Calendar) by right-clicking the Birthdays calendar, choosing Get Info, and checking the Ignore Alerts box. Happy birthday to all!