mark nottingham

Surfing the Barcoded Web

Saturday, 16 September 2006

Apple’s shipping an iSight camera in just about everything these days, and one of the coolest apps to use it is Delicious Library. If you follow that to its logical conclusion, everything should be barcode-enabled, by Web-enabling it.

For example, if you go to a wine site and scan a bottle that’s sitting on your shelf, Safari should be smart enough to automatically navigate to a page with details for that bottle (e.g., a map of where it was produced, its winery, tasting notes, and similar wines).

How? Well, there’s already a free library that does the heavy lifting, all that’s needed is a bit of glue into Safari (or Firefox, for that matter) and a standard way for Web sites to advertise themselves as barcode-savvy.

One possibility would be to use a microformat on forms; e.g.,

<form action="winefinder" method="GET">
  <input type="text" name="winery"/>
  <input type="text" name="upc-code" class="barcode-scannable"/>
  <input type="submit"/>
</form>

That would work in some situations, but for others, it would require an explicit barcode form field (which is useless for most users) and an explicit press of the “submit” button. A reasonable alternative might be a link template; e.g., in the HTML’s head, we might find:

<link rel="barcode" href-template="http://wine.example.com/upc/{barcode}"/>

so that a barcode-enabled browser would be able to automatically navigate from a page when a barcode was input.

Anybody at Apple listening?

P.S. It’s not that barcodes are really special, beyond the fact that they’re so ubiquitous; they’re sort of the URIs of the physical world.


4 Comments

stevarino said:

I believe the big catch would be connecting sites to codes, especially in the case of barcode conflicts, granola in america could be lobster in china.

So localized to a site would be the safe way, so we should all markup a microformat containing hidden form fields - seems the most semantic/accessable to me. Why replace what works? :)

Sunday, September 17 2006 at 3:42 AM

Hagen said:

Great idea, two suggestions:

  • Include 2d-barcodes so you can encode URIs directly - see http://www.semapedia.org/ for an example usage

  • I’ve noticed Flash has camera support, a barcode-library for flash would be perfect (yes, I do use osx as well, but this is the age of the browser)

Sunday, September 17 2006 at 6:16 AM

ryan king said:

This sounds an aweful lot like CueCat. Of course, that required special software on the client (not a browser).

Sunday, September 17 2006 at 12:06 PM