Can I take a photo of your business card?


I'm not sure why, but beaming business cards between PDAs never caught on as much as I would have liked. Of course Palm and Wince PDAs don't speak the same beaming language (of course) and I never saw it much in Windows anyway.

With my new fancy scanner, I can scan a stack of 60 business cards in a minute, so it's not going to take me long to do the physical scanning. Business card scanning has been around for a while, but it still presents challenges.

People like to do funny things on their cards. They put stuff on the back (not just for foreign language contacts, where it makes sense.) They put in coloured backgrounds and pictures to make the OCR process as hard as possible. They like to do embossing, or even strange shapes. (Some people used to put rolodex tabs on their cards to make them stand out in a rolodex.) They will put lines or other OCR killers in the background too. People should start expecting their card will be scanned and OCRd, and design accordingly. That means if you put in your stylized logo, but the company name in in plain text too. (Though the need for a URL on a card helps this nowadays.)

Of course, even better to solve the OCR problem would be to put just one string in a clear, easy-to OCR format, which is the URL of a vcard. Then it doesn't matter if I can't OCR anything else, I can get reliable (and up to date) information from there. (One could also imagine a hosting service with a standard URL prefix to put in front of a vcard ID so you don't have to take up that much room on your card. Another idea would be to standardize the VCARD URL so that it says something like "VCARD: S/xxxxx" where xxxxx is a semi-private string, and "S" means use the web URL found elsewhere on the card, with "std-vcard/xxxxx" appended to it. This way you don't have to duplicate the domain name, but nor can vcards be harvested. Otherwise we could just use the E-mail to extract the vcard.)

Anyway, I came up with another idea I will try instead of beaming. "Can I take a picture of your card?" Since I plan to scan people's cards anyway, why not save the trouble and use a small pocket camera I am carrying, and take a photo right there. You don't even have to give me the card. Will I be rude if I don't take the physical card?

Now admittedly, camera phone pictures may suck, and for this you really need a camera with a macro mode. On camera flash may present a giant glare spot unless you learn how to do it right, or are shooting in bright light without flash. The photo won't be nearly as good as a scan, of course. (I suppose one could imagine putting a 2" long hand-scanner line on the side of your PDA to hand scan cards, bar codes and many other things.)

The bad news is that cell phone cameras probably can't make the cut. They don't have macro mode, and if they have a flash, it's going to be very hard to get a good exposure on the card. You have to tweak what you can tweak and even then it may not be possible. (I found I had to use my cell camera's exposure compensation to drop it by 2 stops to avoid having the LED that counts for a flash not wash out the card, and even then it wasn't very good.)


You can express a vcard in HTML using the hCard microformat, and embed it in any web page, so you can skip your multistage proposal, and just check the linked URL for an hCard instead.

But most of the business cards I see don't have the user's personal page on them, but rather a company page.

As noted, one could develop a standard such that you can map company page plus E-mail address or phone extension etc. to vcard/hcard page but I fear that could be abused by data harvesters. You want a code that only works for people who have the physical card in their hands.

I met a guy at CTIA Wireless this fall who was promoting 2-D bar codes for business cards. I can't locate his contact info right now. But there's an interesting Wikipedia entry about this idea and some open source efforts around it:

This sort of scheme would store a lot more info than you put squeeze into a URL.


Why would you want to store more than you can put into a URL? A URL provides you with infinite information, so you hardly need more.

I really don't see people putting bar codes or dot patterns on their biz cards. OCR is already good enough if they take the care to design the card for easy OCR. Bar codes are ugly. I deliberately did not suggest them, as people just plain will never adopt them. A short string -- or simply following good protocol for OCR of what's there -- should do the trick.

One good approach would be to have a free reference OCR engine on the web. Any new business card design could be uploaded to it, and it could be rated by the OCR engine as to how readable it is, and how well it will survive degradation (ie. skewed, noisy scans of dirty, bent cards.) People who care would just check their design there, and have no need of bar codes, or even a VCARD pointer. Though the VCARD pointer has the plus of being updated as things change.

Good point, but I guess I also shy away from using URLs for everything due to phishing concerns. Is there any reason that 2-D barcodes would be any less phish-able?


Well, if they contain the information rather than a pointer, they aren't harvestable (not sure what phishable means) because only the people you give cards to get them. It is true that URLs to vcards could get into databases if you hard your business cards out indiscriminately (for example in prize drawings etc.) and then those databases could leak.

You probably want a 2-way confirmation on this, in a social networking style. You put a small code on your business card. This code lets somebody establish a contact to you on a social networking site. You have to confirm that contact, and you can revoke it later if it turns out to be a source of spam or other problems. One nice aspect of this is that it can make all business cards two-way: If either one of us gives a card to the other, and the recipient enters it into the business network tool, the option is open for the reverse link to also be created as though we exchanged cards in both directions.

This link is more to the point, as this standard seems to be in use in Japan:

I've recently reprinted my company business cards with both a QR-Code and Microsoft TAG on the back. Will try to upload an example or if you want to see it please send me an email (Brad only 'cause my address isn't shown publicly!)

Thanks for the interesting article ;-)

Add new comment