I just noticed a really cool feature of Gmail. This is subtle, so hang in there with me…
It, like other mail programs attempts to automatically maintain your address book for you by adding entries for addresses in mail you send. When you reply to someone who’s e-mail arrived without a real name, just an e-mail address you’ve got a problem: how do you add a useful address book entry for that?
Gmail adds an address book entry with the real name set to the part to the left of the @. A reasonable default, since some people’s usernames are close enough to their real names, and also because you might search the address book by typing some of what you remember from their email address.
But if you are a little bit obsessive like me, you prefer to see the address book have the proper real name. It makes the email look nicer when it goes out, and means that if you search on the person’s name instead of their email address, you can still find them. So I’m tempted from time to time to go in and fix up my address book.
Today I noticed I was replying to someone who’s address book entry was missing the real name. I thought, “Oh jeeze, I need to fix that”. But for some reason, instead of actually going and editing things in the address book user interface, I just edited the To box to add in the real name, changing “To: firstname.lastname@example.org” into “To: Foo Bar <email@example.com>”. (Ok, so it helps that I’ve read RFC 822, and actually know the BNF for an e-mail address. I’m a geek. Sue me.)
After making the edit, I realized, “Idiot. Now you just have to go do the same thing again in the address book.” So I sent the message and headed over to the address book. And found that Gmail had already fixed it for me.
How cool is that? It looks over your shoulder as you send things out, and fixes up your address book to track the edits you make to the To line. If this had been your run of the mill almost-good-enough-but-really-irritatingly-not-quite-right software, it would have noticed the address was different, and made a NEW entry in the address book for that, thereby leaving me with an address book that still needed pruning. But because this is Gmail, it Did Things Right.
Thank you, Google, for helping me make it day by day without throwing my computer off the top of the Empire State building.
Update: I just noticed that they almost got it perfect: old e-mail from the same person does not get the benefit of the new address book entry. It is still missing the real name. It seems like during rendering of a thread into HTML, they should use lookups into the address book to “clean up” names in the headers. This simple request is likely fraught with performance problems and other subtle gotchas, so I suspect that it was considered and either skipped or delayed until all the gotchas are figured out.