I guess I’m some sort of completist when it comes to having accurate contact information for my friends. OS X has made it really worth your while to keep that information up to date, for a few reasons.

First, if you have a friend with an oddly spelled name, and you don’t have that person’s name in your contacts, then OS X will flag the spelling of your friend’s name with the dreaded red wavy underline; it flags no spelling problems if you have them in your contacts.

Second, if you keep all the various ways of addressing a given person under the same contact, OS X lets you search for that person using every available identifier. For instance, I have a colleague whose real name is ‘Junrui’, but whose nickname is ‘Hench’; if I’m diligent about including the ‘nickname’ field and the real first name in his contact entry, then I can search Mail.app (inter alia, presumably) using either the nickname or the first name. The same goes for an old friend, for whom I have eleven email addresses and two family names, one hyphenated. If I don’t keep these contacts merged, then I need to remember whether the email message I’m searching for came from him when he was just “John Smith” or had become “John Smith-Jones” (note: not his actual name). With merged contacts, you can just search for ‘Smith’ and be done with it.

Third, the Calendar app can display a feed of contacts’ birthdays, which you can selectively choose to display or hide. I like that much better than having to keep a separate annually recurring calendar entry for every one of my friends. Instead I just stick their birthdays (and anniversaries) in the appropriate contact entries, which is where they belong.

Social networks make things a little more complicated. iOS lets you pull in contacts from your LinkedIn, Facebook, and Twitter accounts. To some extent this is all to the good: now your contact entries will have your friends’ Facebook profile pages, their Twitter handles, and so forth. But now you also have multiple contacts for each person: one contact for John Smith via LinkedIn, one for John Smith via Facebook, and so forth. Annoying.

Enter iOS and Mac contact merging. This is useful, but frustrating. You can merge contacts on OS X, and merge them on iOS, but I have thus far not been able to make them sync as smoothly as one would like. Syncing between iOS and OS X is otherwise quite smooth, using iCloud: you change a field in the contact on your Mac, and by the time you come to your iPhone, the contact is updated there. Great! Except that merging contacts under OS X doesn’t seem to merge the corresponding contacts on iOS.

So then, if you’re as (apparently) anal about this as I am, you go over to your iPhone and merge there, too. (You do this by editing one of the contact entries you want to merge, going to the bottom of the entry, selecting ‘Link Contacts’, and then selecting — one by one — all the other contacts to merge.) This is twice the effort, because anal.

Now you have your contacts merged on both devices. New problem: how does the Apple universe de-duplicate entries? Suppose you list your home address on Facebook as “Cambridge, MA 02139”, whereas you list it on LinkedIn as “Cambridge, MA 02139-3986”; how do you de-dup that? At least two plausible alternatives come to mind: either include *both* addresses in the merged contact, or merge them into a single address with more information in it — in this case, a single address with the ZIP+4. iOS seems to go for the first option: include multiple nearly identical addresses. Which is a little annoying because, if you’re OCD about this sort of thing (as I apparently am), you are then very tempted to then go through and de-dup everything properly.

I don’t fully understand the internal logic of merged iOS contacts. I think they’re designed with the assumption that you can un-merge them later; depending upon how they implemented that, it may mean that you can’t delete a superfluous address entry: you may un-link the cards later, and will at that point need to recover the original address. So it’s possible that when you delete a duplicate field in a merged contact entry, iOS keeps the deleted field around, hidden, and available for un-hiding if you decide to un-link. It’s confusing to me.

While writing all of this up, I discovered some oddities about the merging/syncing logic:

* OS X has a “maiden name” field in contact entries. That’s handy: again, I may want to search for “Jane Smith” before she became “Jane Jones”. It doesn’t seem like maiden names propagate to iOS contacts.
* Duplicate home addresses seem to show up in iOS but not under OS X.
* If I mark Jane Jones’s maiden name as Jane Smith under OS X, I would expect that I could search Mail.app for Jane Smith, and get all of Jane Jones’s emails in the same result set. It seems to not be so. I was really excited that OS X had seemingly mastered the notion of “identity”, whereby Jane Smith and Jane Jones are really different labels for the same identity. I think maybe OS X has a different notion of identity than I do, though I could probably defend their notion of identity if I were called upon to do so. Maybe, for instance, it’s sensible to treat Smith and Jones as different identities, because maybe sometimes you want to search for things from a particular period in Smith/Jones’s life; in that sort of case, you’d want to make a distinction between Smith and Jones. That said, see the next bullet.
* If I type “Smith” into Mail.app’s Spotlight search field, it doesn’t return me any results from the contact whose maiden name is listed as Smith. That seems odd, and cuts against the interpretation of OS X identity that I posited in the previous bullet: it can’t be that OS X is trying to keep your options open by giving Smith one identity and Jones another. Smith’s identity seems to have disappeared altogether.
* Actually, now that I focus on it more, I notice that OS X doesn’t unify identities at all in the way that I’d hoped. Again supposing I have several email addresses for Smith/Jones, one of which is jane@smith.com and the other of which is jane@jones.com, I would expect to be able to search Mail.app for “emails from Jane Jones” or “emails from Jane Smith” and return email messages from any of them. It seems to not be so.

Some friends and I experienced no end of trouble, along similar lines, when we tried to carry on a long-running group chat via iMessage. For reasons that still make no sense to me, a sequence like the following would happen often, whenever there were more than two people on the thread:

1. Person A would start chatting with people B and C on message thread 1.
2. Person B would reply to A and C.
3. Person B’s reply would show up on A and C’s devices on message thread 2. (I say “devices” rather than “iPhones” because at least two of us were trying to conduct this conversation from *both* an iPhone *and* a Mac. I don’t remember whether that fact caused any of the particular problems that we ran into. At this point, even the memory of our difficulties is frustrating enough that I don’t want to revisit it.)

They wouldn’t be threaded together. This is incredibly annoying. It seems like ultimately this is related to Apple’s confused notion of “identity”. Again, it seems to me that your device ought to treat anything that comes from me — from any of my email addresses, phone numbers, Twitter handles, etc. — as an emission from “Steve Laniel”, the metaphysical entity. The fact that one of the senders happens to be steve@stevereads.com, while another happens to be steve@laniels.org, should be immaterial. I think this distinction confused iMessage, even though I think all of us were diligent about telling iMessage that any of our phone numbers, email addresses, etc., should all be valid senders for iMessage purposes.

Again, there may well be good design reasons not to unify people into “identities” of this sort. Perhaps there are certain cases where it makes sense to unify, and others where it makes sense to separate. I would just like to see Apple defend its separate/unified identity design decision. But Apple doesn’t, generally speaking, explain its design decisions to anyone, so I’m not holding my breath. All I know is that the results are often confusing, as it stands.

I’m tempted to say here that Apple is very good when they control the entire experience, start to finish: if the universe of your usage lies within Apple products, then they’ve got the user experience handled. As soon as you need to incorporate the outside world in some way, though — by syncing across devices using Google’s sync services; by using multiple email addresses from non-iCloud providers; by loading iCal calendar feeds from other providers; by pulling in contact information from LinkedIn or Facebook — the experience gets much more muddled, and I don’t know that Apple does terribly well. They’re getting better over time, and I have hope that they’ll eventually get it working well enough that a lot of the muddle I described above will go away. They need to, because over time our mobile devices and computers are incorporating more and more sources of information in more and more complicated ways. Apple has historically done very well at forming a coherent whole from its own universe of products; I now really hope it’ll form a coherent whole from people’s online identities.