Mac OS X’s Address Book: Problems with Edit mode

Posted by Pierre Igot in: iTunes, Macintosh
November 10th, 2005 • 6:57 pm

Mac OS X’s Address Book application is a database-driven application. As such, the user expects it to behave in ways similar to other well-known database authoring tools and database-driven applications, including FileMaker Pro, iTunes, etc.

Unfortunately, for some reason Address Book has a number of rather strange quirks that can be rather irritating for some users.

Fundamentally, Address Book is closer to a database-driven tool such as iTunes than to a database authoring tool such as FileMaker Pro in that entering new data is only something that you do occasionally. Most of the time, you browse the existing content of your Address Book database. In FileMaker Pro, the “Browse” mode is a mode in which you can both browse your existing records and create new records or edit existing records.

In Address Book, on the other hand, the default browsing mode doesn’t let you edit records. You have to click on the “Edit” button or select “Edit Card” (command-L) in the “Edit” menu to switch to the Edit mode where you can actually edit your address book record.

The interface for switching modes in Address Book is rather poor. Once you select “Edit Card” and the application switches to the Edit mode, the menu item in the “Edit” menu still reads “Edit Card”—even though you are already in Edit mode. And you have to select that “Edit Card” command a second time to exit the Edit mode.

How is possible for a phrase such as “Edit Card” to actually mean “Exit Edit Mode”? This doesn’t make any sense. The problem is that, in an attempt to keep things simple, Apple seems to have wanted to avoid actually calling this Edit mode a “mode” anywhere in the Address Book interface. The “Edit Card” command switches you to Edit mode, but the only clue that you have that you are in a different mode is the fact that the “Edit” button at the bottom of the window looks depressed, and the fields themselves are editable. But there’s no indication anywhere in Address Book’s menus that you are in a different mode. (Even without using the “mode” word, Apple could still have used something like “Save Changes and Stop Editing Card” for this menu command, though. Anything would have been better than keeping “Edit Card”!)

By comparison, FileMaker Pro has various “mode” commands in its “View” menu: “Browse Mode,” “Find Mode,” “Layout Mode,” and “Preview Mode.” If you consider that these are different modes of “viewing” your data, then I suppose it makes sense to put these commands (which also indicate the current mode) in the “View” menu. Address Book has no such commands in its own “View” menu.

iTunes, which is similar to Address Book in that it is database-driven but used mostly in Browse mode, actually forces you to go through a modal dialog box when you want to edit your tags—except for the song title tag, which you can edit by simply selecting the track and pressing the Enter key (or by clicking on the title itself and waiting a second).

So Address Book has its own proprietary way of switching between Browse mode and Edit mode, and the interface for it is not exactly perfect, at least when it comes to the way the mode is reflected in the application’s menus.

(Interestingly, during the early stages of development of Mac OS X 10.4, Apple had actually implemented another way to switch from Browse mode to Edit mode in Address Book. You could do so by simply double-clicking on any of the fields in a card. The simple fact of double-clicking was an indication to Address Book that you wanted to switch from Browse mode to Edit mode. This other method for switching modes was removed in the later stages of development of Tiger, presumably because it interferes with another use of double-clicking, which is to select entire words. I, for one, actually liked the double-clicking shortcut for switching to the Edit mode, because I rarely have to double-click on words to select them in an Address Book card, unless I am already in Edit mode. It felt rather natural to me, especially since the double-clicking method is already used for switching modes in other applications, including InDesign, where you can double-click on a text block to switch to the Text tool, and Microsoft Excel, where you can double-click on a table cell to make it editable.)

The problems with the Edit mode in Address Book are not limited to the process of switching modes itself. Once you are in Edit mode, there are a couple of small, yet significant problems.

The first one is what happens with the text that’s already there in the empty fields by default. Instead of indicating what each text field in the card is for with a text label next to the field, Address Book actually indicates the intended content of the field with grey text in the field itself. For example, the field for “First Name” is indicated by the word “First” in grey text in the field itself:

Default text in First Name field

The reason for this is pretty obvious: Having a text label next to each field to define its contents would make it much more difficult to condense all this information into a fairly small window. And Apple actually uses text labels to describe sub-categories in each section of the card where you can have multiple fields. For example, in the section for e-mail addresses, there is one field for an e-mail address by default, and its text label is “work,” to indicate that it’s intended to contain the person’s work e-mail address. The only indication that we are in the “Email” section of the card is the grey “Email” text in the field itself. In other words, the sub-category is described by the text label next to the field, but the category itself is described by grey text in the field itself, which disappears as soon as you enter something.

It’s a rather strange way of doing things, and it’s particularly problematic in light of the fact that several different sections of the card share the same sub-category labels. For example, you can have a “work” phone number and a “work” e-mail address and a “work” mailing address. So in effect you have three sections of the card which are only distinguished by the grey text that is in the empty fields by default. As soon as you enter something in these fields, there is no longer anything that distinguishes the “work” phone number from the “work” e-mail address, except for their respective position in the card—and, of course, the contents of the fields themselves, since presumably a phone number will consists mostly of digits, while an e-mail address will consist of alphanumeric characters with a “@” symbol in the middle.

The basic problem with this approach is that it is fine as long as you don’t make any mistakes. But if, by mistake, you enter an e-mail address in the “work” phone number field (and Address Book will actually let you do this without any warnings about mismatched data), once you’ve entered the data, there’s no longer any visual indication that the e-mail address is in the wrong place. All you see is a “work” text label and an e-mail address next to it. Once you exit the Edit mode, the fields that contain nothing are hidden, so you have absolutely no indication that your e-mail address is in the wrong field.

This particular problem has actually happened to me a few times. I couldn’t get Mail to autocomplete an e-mail address for me, even though the e-mail address was clearly there in a card in my Address Book. I couldn’t figure out why it wouldn’t autocomplete the e-mail address. Finally, I realized that I had mistakenly entered the e-mail address in the “work” phone number field! If you do that, then of course Mail will not actually recognize the e-mail address as an e-mail address and will not include it in its autocomplete feature.

There is also another problem with this way of labelling the card’s text fields with grey text in the fields when they are empty. The problem is that this grey text is automatically removed from the field and replaced by the data you are entering only if you do things as expected. The other day, I mistakenly pressed a cursor key before starting to enter my data, and here’s what happened:

First, I created a new card, and Address Book switched to Edit mode by default automatically. I tabbed into the “First Name” field, and the “First” text in the field was selected by default, as expected:

Default text in First Name field

But then I accidentally pressed the Right cursor key:

Default text in First Name field with insertion point

Note the insertion point in the field. Then I started typing the first name. And here’s what I got:

First name prefixed with First

Obviously, this person’s first name was not “FirstMary,” and I never typed “First.” It was the default grey text, which Address Book failed to delete because I had accidentally pressed the Right cursor key before starting to type.

This simply should not happen. And it’s the same with every field in the card that contains grey text by default when it’s empty—i.e. most of the fields, except for the last one, the “Note” field.

The problems don’t stop here. I am a fast typist and I hate having to switch from the keyboard to the mouse and back all the time. So I use the text selection keyboard shortcuts in Mac OS X very often: option-shift-Right to extend the selection word by word to the right, for example, and option-shift-Left to extend the selection word by word to the left.

In the context of a database-driven application, I expect these keyboard shortcuts to work within each text field that I might be editing. And they do work in Address Book in Edit mode. The problem is that they don’t stop working when you reach the boundaries of the text field that you are editing. If you editing the “First Name” field, for example, and you press option-shift-Right to extend the selection word by word to the right, here’s what happens:

Keyboard shortcuts for text selection in Address Book

I suppose that there are some people who might argue that this is actually a useful feature. And there are indeed a very small number of scenarios where extending the selection beyond the field currently being edited might be useful. But I am afraid that, in most scenarios, it is not useful, and it is not a desirable behaviour.

See, when you use keyboard shortcuts for text selection very frequently like I do, you often have to press them repeatedly in quick succession, in order to select a bunch of words, for example. And in such situations, you frequently “overshoot” by pressing the shortcut too many times. You then have to backtrack by pressing the opposite keyboard shortcut.

But there is little risk of overshooting in a text field if the selection stays within the boundaries of the field. You can safely hit the keyboard shortcut as many times as you want; the selection will stop at the end (or the beginning) of the field.

That’s what happens in dialog boxes used to edit data, such as the track information dialog box in iTunes. When you edit the text tags for a track in iTunes, the text selection shortcuts work just fine, but within each text field. They don’t work across text fields! Similarly, in FileMaker Pro, the text shortcuts work just fine, again within the boundaries of each text field.

The problem in Address Book is not limited to this particular field. It affects all fields in a card. And it doesn’t affect the text selection shortcuts exclusively. It also affects text selection with the mouse. You can also use your mouse to click and drag across multiple text fields in an Address Book card in Edit mode. This behaviour might make sense in Browse mode, where you might want to select the contents of multiple fields to copy it to the Clipboard so that you can paste it in another application. But what’s the purpose of this behaviour when editing cards in Address Book?

Again, I fail to see how this can be useful except in a very small number of theoretical scenarios. And because of this, it’s far too easy in Address Book in Edit mode to overshoot either with the mouse or with the keyboard and select more than what you meant to select.

Finally, here’s a scenario where this behaviour is not only useless, but actually buggy. Say you are in the e-mail text field, and you already have an e-mail address in it. Your insertion point is at the end of the field, like so:

Back selection

Then you start pressing option-shift-Left repeatedly to extend the selection word by word to the left. Here’s what happens. First you select the portion that comes after the “@” symbol:

Back selection

Then you select the entire e-mail address:

Back selection

No problems here. This is expected. But say you press the shortcut too many times. (You overshoot.) Here’s what happens. First you select the “work” label as well:

Back selection

This is still OK. It’s useless, but it’s OK. But if you press the shortcut once more, you get this:

Back selection

The e-mail address is no longer selected! Instead, Address Book actually selects the previous field! And if you try to correct your overshooting by pressing option-shift-Right to reduce the selection, here’s what happens:

Back selection

Eek. Now we’re really in trouble! Might as well give up and start all over again!

If the previous field already contains some text, then you might get this type of correction when you press option-shift-Right once:

Back selection

But then if you press the option-shift-Right shortcut again, nothing happens, and Address Book refuses to reduce the selection to include the e-mail address only again.

I am afraid that this behaviour is not only useless, it’s actually buggy. There is no way that this sequence of keyboard shortcuts should actually cause the e-mail address to become deselected at any point.

So there you have it. For the sake (presumably) of simplicity, Apple has actually created a database-driven tool where data entry works in non-standard ways and requires constant adjustments on the part of the user (who is used to other database-driven tools).

I suppose I should also note that the text input in Address Book, even though it is, presumably, a Cocoa application, fails to support direct text replacements via the input method. This means that, if you use an Input Method tool such as Spell Catcher X, you need to make sure that the option to make direct replacements (without backspacing) in that application is turned off for Address Book. Other wise, Spell Catcher’s automatic text completion and glossary features won’t work properly.

If you don’t use Spell Catcher X, you don’t have to worry about this. But it’s yet another indication that Address Book does things in a proprietary, non-standard way.


17 Responses to “Mac OS X’s Address Book: Problems with Edit mode”

  1. blech says:

    It’s a minor point, but the artist and album fields are also editable in iTunes “browse” mode. However, there’s no keyboard combination that will get you there: tabbing from changing the song name just ends your edit. You have to click on the text (specifically, not just the table cell containing the text) and wait a moment for it to become editable.

  2. Pierre Igot says:

    Correct, I should have double-checked this. Like you said, since it’s only accessible with the mouse, it’s not very useful. But it’s there.

  3. Comme-ci, comme ça » Blog Archive » Adressboken är felbyggd says:

    [...] Den trevliga bloggen Betalogue, signerad Pierre Igot, är ett riktigt guldkorn bland alla bloggar. Igot skriver om användbarhet på ett rakt och ohämmat sett. Till min stora lycka handlar den senaste sågningen om, just det, Adressboken. [...]

  4. Michael Tsai - Blog - Address Book’s Edit Mode says:

    [...] Pierre Igot: [...]

  5. Paul Ingraham says:

    Expanding on this minor point about iTunes: in fact, virtually all metadata fields are editable in iTunes, not just title, artist and album fields. And yes, it is certainly irritating that you can’t tab through them, and yet I edit tags this way constantly anyway. Better than opening the info dialog every time, unless you’re changing multiple files at once.

    But back on the subject of your whole post, Pierre (instead of the iTunes nitpicking :) … gosh, I’ve been waiting for AB to develop to the point where I’m willing to use it ever since it was first released… and I’m not sure it’s ready! Everything you write about here is exactly the kind of stuff that’s bugged me about AB all along. I find it terribly disappointing, and I still don’t want to use it. But choosing between Entourage and the Address Book/Mail duo is like trying to decide who to vote for in the next federal Canadian election!

    Okay, it’s not a lot like that. Just a bit.

  6. Pierre Igot says:

    First, we need to have an election. Until an election is actually announced, I wouldn’t lose any sleep over it—Address Book is more of a daily concern, really :-).

  7. soosy says:

    I started using Address Book more seriously recently. Some things that have been frustrating me….
    - It would be nice to designate a group (family) as having the same address/phone. There is no autofill, and you can’t even copy a full address from one person to another, you have to copy street, and then city, and then state and then zip. Bah!
    - You can sync your address book or “share” it with another .mac member, but it has to be the ENTIRE address book.
    - You can sync a particular group to iPod, but it can’t be a smart group, and certain fields like Birthday aren’t synced. Therefore, some children that I only have birthdays for show up on the iPod as just a name and no info! Don’t copy that contact then, at least. (A workaround for smart groups, I think, is to make a normal group with the smart group as its only entry.)
    - I have some mailing address emails added to my address book for the Mail junk filter to recognize. You can mark these as “company” which gives them a nice icon to differentiate them, but you can’t sort the Address book list by company/person. And you can’t even make a smart group that just shows people and filters out those marked as company! Argh

  8. Pierre Igot says:

    soosy: Obviously this post is about Address Book’s Edit mode specifically. I agree that some easy way to duplicate cards would be useful. Address Book’s used to have an “AutoComplete” kind of feature, but it was a nightmare for postal codes, so Apple turned it off altogether. They need to work harder on this.

    Also, I am not sure creating Address Book cards for junk mail filtering purposes is a good idea. One of the basic ideas of junk mail filtering is usually that people/companies that do appear in your Address Book are legitimate correspondents, not junk mail senders. Not sure how Mail’s junk mail filter deals with junk mail that matches existing Address Book entries…

  9. soosy says:

    Ah, what I meant was I have added legitimate addresses, such as mailing lists senders, to my Address Book so they will be recognized and WON’T be marked as junk. Unfortunately they clutter up my address book so I was hoping for a way to sort or filter them out of the view.

    I haven’t added any addresses for this purpose in a while though… and maybe the junk filter is smart enough without needing to do that. i.e. if it doesn’t get marked as junk the first time (or especially if you UNmark it), it won’t likely get marked the next time.

  10. Pierre Igot says:

    soosy: You can have a smart group that only shows Address Book cards whose “Company” field “is not set.” Would that help?

    As far as I know, the Junk filter does continue to learn—although how well that process works I do not know.

  11. Michael Z. says:

    Yup, the non-standard text field behaviour is a big pain. But the way Undo works in Address Book is criminal.

  12. Comme-ci, comme ça » Blog Archive » Adressboken är felbyggd says:

    [...] Den trevliga bloggen Betalogue, signerad Pierre Igot, är ett riktigt guldkorn bland alla bloggar. Igot skriver om användbarhet på ett rakt och ohämmat sett. Till min stora lycka handlar den senaste sågningen om, just det, Adressboken. [...]

  13. Gems from jem » The OS X Addressbook says:

    [...] I like the idea of having a system wide address book but I’ve never liked the Addressbook user interface. Here you can find some nice comments about the Addressbook. No responses to ‘The OS X Addressbook’. RSS feed for comments and Trackback URI for ‘The OS X Addressbook’. [...]

  14. Jan Erik Moström / The OS X Address Book says:

    [...] I like the idea of having a system wide address book but I’ve never liked the Addressbook user interface. Here you can find some nice comments about the Addressbook [...]

  15. » My 2008 Apple Wishlist: Address Book « Laaker.com - Micah Laaker says:

    [...] Pierre Igot has actually done a fantastic job detailing issues with Address Book’s Edit mode problems, so I won’t try to compete with his thorough assessment. I’ll just say “+1″ and leave it at that. (Sad side note: his comments are 2+ years old.) [...]

  16. Adressboken är felbyggd | Comme-ci, comme ça says:

    [...] bloggar. Igot skriver om användbarhet på ett rakt och ohämmat sett. Till min stora lycka handlar den senaste sågningen om, just det, Adressboken. Det här inlägget postades i Användbarhet, Apple, Program. Bokmärk [...]

  17. Betalogue » Dumbing down Mac OS X: Lion’s Address Book says:

    [...] has never been a particular good piece of software. In fact, I distinctly remember writing a pretty scathing blog post about the multiple problems with its “Edit” mode six years ago. (To be fair to Apple, most of [...]

Leave a Reply

Comments are closed.