Monday, 08 November, 2004

Wishing for an address book standard

Another item in Jim's list of things that should be easy but aren't: converting address books. Come to think of it, you shouldn't have to convert your address book at all, but rather use the existing one with a new program. But you can't do that, and converting from one vendor's proprietary format to another's is difficult or impossible.

Why are software developers so dead set against agreeing on a standard address book format and interface that they all can use? Is writing address handling code really so exciting? Why the heck isn't there a simple, standard, text-based (or XML, if you want to use the latest and greatest buzzword technology) address book format and a standard library to which all programs can interface?

It's available on Windows, if you limit yourself to Outlook (or Outlook Express), Microsoft Office applications, and third party applications that use the incredibly complex MAPI and CDO interfaces. Forget being able to modify the darned thing with a text editor, though. And forget being able to reliably import addresses from other programs into the Microsoft Office applications.

Microsoft isn't the only uncooperative vendor here, by the way. In fact, one could make the argument that Microsoft is the only vendor that is even partially cooperative. At least they define an interface (MAPI/CDO) that all Windows programs can use to interface with the address book. It's difficult to use, but it's possible. Not so with other vendors' address books. In the last 18 months or so, I've used Microsoft Outlook and Outlook Express, PocoMail, KMail and Evolution on Linux, and Mozilla Thunderbird. Plus my PalmOS-based telephone. The only two that share data reliably are Outlook and the phone. All the rest use their own proprietary formats or interface for storing addresses. Most will import addresses from Outlook or Outlook Express, but won't go the other way, nor will they import from other programs' formats.  Writing code to convert between formats is difficult and time consuming.

You think maybe I'm an extreme case and that I wouldn't have this problem if I'd just stick with one email program? That's almost true if I'd stick with Microsoft applications (IE and Office). As long as Word or Excel will do whatever it is I want to do with addresses, no problem. But if I buy a third party program to perform some specific task, I'd better hope that the vendor included MAPI/CDO support for the address book. Considering how buggy and difficult to use MAPI/CDO has proven to be, I'm not terribly surprised that many vendors have opted not to include that support.

Please, somebody create a simple XML-based address book format along with a standard access library. Give it away. Let other vendors include it in their code. Evangelize it. Convince Microsoft and the Open Source crowd to embrace it. That one step would make life so much easier for all users, and would go a very long way on the road to convincing users that computers don'thave to be complex and frustrating.