Delicious Library is one of the slickest apps on the Mac, and won countless design accolades. Essentially, it is a database for your books, CDs and DVDs (version 2 added gadgets), and it looks glorious on a large monitor like mine. It seems like a novelty for collector-fondlers, and I myself unfairly dismissed it as a toy in 2008, but behind its playful user interface lies a remarkably powerful organizational tool, and the new 2.5 version has made major improvements in stability and performance after 2 years of relative neglect.

Screenshot of Delicious Library

My wife and I are both avid readers—one of our common dreams is to someday have a home with a dedicated room for a library. We are squarely in the demographic for the Bookshelf porn website. Here is a montage of mine alone, not including the books I reluctantly had to consign to storage, or those in my parents’ basement back in France:

My bookshelves

With well over 900 books, I needed a system to manage. At some point I discovered Delicious Library has a writeable location field in its database for every item, and you can create virtual shelves to organize your books. I literally have one DL shelf for each shelf in my bookshelves, one for each box in storage, and one for all the books I keep at work. This way, I can browse shelf by shelf or box by box, or conversely look up the location of a book I need.

Location data for a book

You may think recording the location of each book would be a mind-numbing task, but Delicious Library makes it effortless. It can read ISBN bar codes using the iSight camera included in most Macs, but a better option is to use the Microvision RoV Bluetooth barcode scanner they sell and support. It is quite expensive at well over $200, specially compared to the inexpensive Symbol CS1504, but the convenience makes it well worth the price if you have a serious library to wrangle.

If you select a shelf on the left sidebar, then scan a barcode, the book is automatically added to the selected shelf. I filed a feature request with them in 2008 for precisely this, and I do not know when they added it, but it makes a world of difference. The scanner has a memory, so you can zip into an adjoining room, scan all the barcodes on a shelf, zip back and let the scanner pour the shelf’s inventory into DL. It even reads out the titles as they are added. Repeat the process and quite quickly you can compile an inventory of your entire library.

The search function in DL is somewhat primitive, but Smart bookshelves (similar to iTunes’ Smart playlists) help. I have Smart Bookshelves for:

  • Books I have already read
  • Books I have yet to read
  • Books that now have significant resale values on Amazon, to identify candidates for decluttering (you would be surprised to see the markups some art or technical books can fetch once they go out of print, even temporarily, such as my old copy of De Marco’s Peopleware).
  • Books signed by the author
  • Science-Fiction and Fantasy books, using Amazon’s (probably Bookscan’s) categorization
  • Computer books, similarly

Delicious Library tries hard to use cutting-edge functionality in OS X, which is why version 2 only supported Snow Leopard and later. It has a top-notch AppleScript implementation. I am no AppleScript guru, but I relatively easily wrote my own scripts to:

  • Copy the bookshelf name into all the books it contains. This essentially eliminates the data entry, but you have to be careful to make sure a book is not misfiled into two shelves at the same time. The sample script Highlight shelves containing selected media is helpful in this respect.
  • Find the BookMooch entry for books I want to give away.
  • Find the book in the San Francisco Public Library, in case they do not have it and might be interested in a donation.

Thanks to the user interface, browsing books on the Mac is almost as fun as doing so on the bookshelves, and infinitely faster. Of course, this is true of most book catalog programs, including many fine free options available for Windows and Mac, but most others do it with less aplomb.