Hidden Fun in Software Design

Mac OS X Address BookMac OS X’s built-in Address Book is about as unglamorous a utility as any you can name. Aside from the fact that having a system-wide database of contacts that’s available to any application willing to hook into it is incredibly handy, very little about it could be described as interesting. It’s dead boring, in fact.

And yet, the other day, it surprised me. A colleague of mine sent, attached in an email, an updated vCard with his new home address. At first, I groaned a bit, because the relevant information — the new address — was buried inside of the vCard, hidden from view. I wanted it visible in the body of the email so that I could just update his contact information by hand. I was under the impression that, if I clicked on the vCard, it would launch Address Book and automatically add itself again to my contacts database — leaving me with two different cards for my colleague. Not a big deal, but an annoyance.

Two’s a Crowd

Below: Card tricks. Address Book has fun with duplicate contacts.

For whatever reason, though, I threw caution to the wind and double-clicked on the vCard. To my surprise, something unexpected happened: Address Book launched, alright, but a brand new screen appeared, one I hadn’t ever seen before. It identified the new vCard as a duplicate, highlighted the updated data, and offered to let me choose between retaining the original card, retaining the new card, retaining both, or simply updating the old card with the new information. I chose the last of those options, which also happened to be the default.

Address Book Duplicate Screen

This is a smartly done and very handy bit of functionality, but the best part about it is that it’s so visually novel. The options arranged at the bottom of the screen, represented as a series of green and orange icons, are the most colorful parts of Address Book by far. Together with the unexpectedly playful, forty-five degree red snipe at the top right that reads “Update,” the whole screen looks an order of magnitude funner than rest of the application.

Fun Time Scheduled for Later

You can make an argument that the whole of Address Book could stand this level of novelty, and you might be right. But setting that debatable incompleteness aside, what I like about this new-to-me screen is the idea that an application can reveal itself to you over time, that an experience can be designed not just over the course of several sessions, but over much longer time periods.

In my case, it took me literally several years of working with Address Book to encounter this feature. In spite of how much care that the software’s designers took to make the feature forehead-slappingly logical and aesthetically entertaining, they were in no rush to show it to me; they let me discover it in my own time. They abstained from showing me daily tips, forcing me through extensive tutorials, or devising interaction paths that would unnaturally cause me to encounter it.

Instead, they just designed it and figured that when I needed to use it, it would be there — and that I’d be pleased to see it when I did. That kind of quiet self-confidence is rare in interaction design, I think; it represents a kind of maturity that we’re still working up to: the ability to hold back, to trust the users to embrace applications as a whole and to encounter details over time, to act more like artists than marketers. I know, I know. We’re just talking about a duplication dialog box here, essentially, and this is all a bit of an Apple fanatic’s triumphalism. But sometimes big ideas start with small notions.

  1. Yep :). I love that factor in any design. I think Apple pioneers this aspect of design. I was absolutely awed and overjoyed when I discovered that unplugging my earphone will pause the song in the IPod. I hadn’t read that anywhere, didn’t see it in any advertisement. Thats probably why people sing love songs to their Mac’s, for all the romantic surprises they hold.

  2. Hm, on one hand I think that this would make for a great thread, sharing stories of fun feature finds. On the other, you’re right, finding it yourself is much more rewarding. But then, why not? My favorite unsung feature of my new macbook is that it remembers volume states: headphones in and headphones out. If the last time I had headphones plugged in I was rocking out, and the last time I had my headphones unplugged I had it on mute, plugging and unplugging will adjust the volume automatically to that previous state! What a great work/library/late night at home and I don’t want to wake anyone up feature.

  3. First of all, I can not believe that you just found this feature after having used Macs for so long.

    Which brings me to my second point. You said that you were glad that the Address Book didn’t “show you daily tips” or anything of the sort – however you may have wasted valuable time over the years updating your contact’s information manually when this feature was readily available.

    Do you think this is the fault of the user (you), for not reading the help documentation regarding the receipt of updated vCards, or the application’s developers for not making this feature readily apparent so that you would use it – in hopes that you wouldn’t waste your time?

    That is perhaps the longest sentence/question I’ve ever written.

  4. To me, all the comments in about the goodness and joy of discovering hidden features derive from the power and importance *trust* plays in interacting with a device. A good tool is, in large part, defined by its trustworthiness.

    One of the reasons I have come to strongly prefer working with Macs is that when confronted with a novel situation, I generally trust that what I think I ought to do to accomplish a task will, in fact, be what gets the task done. I feel the same way about my Colnago bicycle, BTW. I never felt that way about MS Windows.

    I am no HCI guru, but a lot of this comes from internal consistency of interaction, I think. And some if it probably comes from great work on the part of designers and builders to anticipate how folks will use a device and what they want to accomplish. It all rolls up into a willingness to rely on the tool.

    In any case, this issue of trust really trumps eye candy or technical whiz bang. Witness, for example, how folks attach to really competent non-technical devices: a sharp knife, a fine bicycle, etc.

  5. Greg: I think you’re right, there’s another phenomenon at work here — consistently behaving interaction models across multiple pieces of software.

    Colin: You bring up a great point that I hadn’t considered. I guess I have been updating vCards ‘the hard way’ for a while now. But I would say that I haven’t wasted that much time doing this — maybe a total of 10-15 minutes in aggregate, across all of the cards I’ve ever updated, and even that at the high end.

    Whatever time I wasted, though, I think was more than balanced out by the sense of delight when I found this feature. It was fun, and it didn’t make me regret having not known about the feature earlier.

  6. A subtle refinement that could be added would be to change the icon for the vcard if it is a new entry, duplicate, or update.

    If this were to happen, I’d like to see it integrated deep into the OS like address book is so that it affects all vcard icons regardless of the application. This way other applications could take advantage of this feature.

  7. Colin: “Do you think this is the fault of the user, for not reading the help documentationЁ”

    This is an interesting way of putting it.

    I think developers have to make an interesting decision with how to reveal functionality to users. In my experience with helping show coworkers / friends / family how to perform a given action on a computer, they generally are afraid of experimentation. It usually turns out that if they just tried it, they would learn something new very easily. Fear sucks.

    I once had a coworker by a new iMac and promptly begin playing with the newly released iTunes. Clicking buttons, he switches to “Full Screen Visualization” mode. “Wow,” he thinks, “what a cool discovery.” Then he wiggles the mouse, taps the keyboard — he is stuck and cannot figure out how to switch back. On the verge of forcing a restart he sucks up his pride and comes to ask for help. Fears sets in so easily, all he had to do was click the mouse.

    Did Apple failed to provide enough hints about switching back? Maybe. Did the user become to fearful to fast? Definitely.

    My first bit of advice to people is always to “mess with it.” Humans seem to learn best by experience through trial & error. At some point they may have to read the instructions, or find a “tutor” but our nature is just mess around with a tool to get it figured out.

    In most cases I would expect loading a new vCard with a matching name to an existing card would at least give me a text warning that I was going to destroy data. That is the responsibility of the developer. A good developer (i.e. Apple) will go one step further and provide a user with a meaningful choice (like Khoi discovered).

    Unfortunately some developers not only fail to provide a meaningful choice, and even worse neglect to include a fail safe, a warning that data could be lost. And this is why users develop a fear of their natural method of learning by experience.

    I’m glad you found the feature Khoi. Now if only more developers would learn to help reduce user fear by providing reasonable fail safes and meaningful choices.

  8. Yeah — what Greg said.

    And it’s not just about consistent UI tricks, but the Mac has accumulated a lot of trust from its users, so that you, Khoi, felt you could double-click the vcf card just to see what happens. There was no fear of screwing something up or getting into some situation you couldn’t get out of. (Something like the elipsis in some menu items to let you know you have a second chance to look over what you’re doing before committing…)

    I think that level of safety/consistency must be hard to accomplish, and I appreciate it in the Mac.

  9. I’m more with Colin. Not overwhelming the user with Too Much Information, delight at discovery, trust ‘n’ stuff is fine, but if it is a mystery it’s bad.

    Mail should have removed the mystery by labelling the vCard (something like) either “Add to Address Book” or “Update existing entry in Address Book.” Same feaure, but with more polish to the magic.

  10. Another fun thing is to update a bunch of addresses, like when syncing your old phone with a new Mac. You get the old|new|update with the additional options of choosing each time or just doing the same with all the updates.

    After reading this thread, I realized that I should add a link to download an updated vCard in my vCard.

  11. That kind of surprise make us love the OSX but is this experience which is harder to explain to others, for example Windows users. That excitement is a personal experience.

    By the way, under Vista (last december release candidate) double clicking a vCard with a modified contact information did the expected thing indeed: it created a duplicate entry.

  12. Great post, Khoi. I’ve had similar experiences with software and websites. Flickr comes to mind. It’s not immediately obvious that you can your photos in a plethora of ways until you start looking for it. And when you do you just think, “Hey, this is cool.”

  13. wow, is this for real? the double click on apple does wonders…
    it’s been there for years and yes it’s simple but that is apples way.
    i’m not being a smart ass but simplicity is a wonderful thing.
    vcards rock and ‘unglamorous’ would not be a word that i would choose, but no sweat.
    apple hides a lot of little nuggets that some never find.
    cheers for finding it!
    (i enjoy your blog btw).

  14. Nice, yes. But…
    – if you add a bookmark to safari that you’ve already got buried somewhere, Safari doesn’t notify you.
    – if you add a song to itunes that already exists, itunes won’t notify you upfront.

    Khoi was right to hesitate: if such a nicety cannot be dependet upon all through the operation system, invoking it is still a leap of faith.

    Nice touch, but to be really usable, such behaviour should be standard, not noteworthy.

  15. There seems to me to be a huge element of marketing folly in this. I’m referring to the assumption that a company such as Apple cannot talk to its customers—current or potential—in the same way that Khoi Vinh is doing here.

    There’s this belief that all advertising must be splashy and stylish, and short on content and details. Aimed at the clueless. Of course you need lots of that, but there’s a whole other marketing realm that is left unexploited. No advertising is aimed at people who already know basic stuff, but are hungry for details…

  16. I don’t believe that just Apple has the power to surprise; I’ve seen many applications where I’ve thought to myself “I wish I could just do this” and behold I could. While I do think the user model and design models are much closer on the Apple platform than others, that’s not to say the same joy can’t be experienced by the linux or Windows user, and while I don’t think you were excluding them by any means; I did just want to point that out.

  17. Khoi, I think this has been in the current and last version of OSX at least. I run Entourage and Address Book and I drag updates from Entourage into Address book and get this screen. If I drag from AB to Entourage I get a duplicate and no way to resolve them.

    One other lovely bit is if you grab the person icon at the top of the person’s address card and drop it into most Cocoa based applications it will create a link to that Address Book card. This bit is utterly brilliant and time saving.

    In VooDoo Pad if you type a full name as it is listed in Address Book it automatically creates a link. When you hover over that name link it offers to send an e-mail or to open the address card. I really wish more applications worked in this manner.

  18. I’m new to this blog, and to the Mac. I’m pretty pleased overall with the ease of use and the designs of many of the applications.

    But at the risk of swimming against the tide, I think it’s unfair to imply that excellence and understatement in UI design is exclusive to the Mac world. I think the difference is that there are so many Windows hackers out there that they dilute the pool of developers, so the average quality is lower.

    But, for instance, Outlook 2003 does the same thing — not as nicely presented as what you describe here, but it asks you if you want to create a duplicate or update the existing information. And the first time I told it (admittedly with some trepidation) to update the existing card, it did so intelligently, giving me much the same joy as you describe here.

    And Office 2003 for Windows has the same functionality that vanderwal describes in VooDoo Pad. Not sure if Office for the Mac does.

  19. I just found one I never knew before!

    Ooooh the goodness.

    Highlight a word in any Mac app (any one you’re reading here if you’re using Safari for example) and hit Ctrl+Apple+D.


  20. I just found one I never knew before!

    Ooooh the goodness.

    Highlight a word in any Mac app (any one you’re reading here if you’re using Safari for example) and hit Ctrl+Apple+D.


Thank you! Your remarks have been sent to Khoi.