Thursday, March 24th, 2011 | Author: Konrad Voelkel
Today in the series "How to do XYZ with software?":
How to manage books?
You read books at work, you read books at home, you lend books, you buy and sell books. If you do at least one of these tasks, you need to think about a metadata management system. For most people, this is just a (wooden, real-life) bookshelf, where all possessed books are displayed, easily to be sorted by author or colour of the cover. Even then, some help with software might be justified, since you need to package the books for every relocation anyway.
Now let's take a look at a quick&easy way to use software for organising a private book collection.
My starting point for this investigation was the following: I'm not living with my parents any longer, but I still have some books left at their place. Now they needed me to put them somewhere else, which forced me to take a look at the collection I once left there. My motives were not pure: I thought about selling some of the books. Many of the books I found were from my childhood, some in a really bad condition, and I kept them as a reminder so I would know what to buy when there's a child's birthday somewhere.
Keeping just the metadata, i.e. the author, title and ISBN (a book identification number), I would be able to buy the book again, if I ever wanted. Using Google Books or Amazon (or numerous other services alike), I could even take a look inside some of the books, without having to carry them with me.
Some people annotate books, some don't. If you don't like annotating books directly, you might put a sheet of paper inside, for annotations (that's what I do sometimes). This piece of paper could be equally well digitalised and stored along the metadata of the book.
Now, imagine you have my problem, which is a big pile of books (uncategorised, unsorted), and you wish to somehow "convert" them into a nice, human-readable and computer-processable list of metadata, including author names, book titles and ISBN codes.
The quick solution
The solution I found uses Google Books and you only need to spend some time for typing ISBNs. There exist solutions with bar-code scanners, but these aren't as fast as just typing the ISBN. So, you go to
and log-in with a Google Account (which needn't be the one you usually use).
Then, in the top left corner, right below the Google logo, you'll find "My library" (or maybe it says something with the same meaning in your language). There you should find a button which says "Create new bookshelf". You can decide an arbitrary name and description, but you should be well aware that the default setting for a bookshelf is "public", which should (in most cases) be changed to "private".
In your new bookshelf, click "Options" and then "Add by ISBN". You'll see the following (without numbers entered):
ISBNs (which really means International Standard Book Numbers) are usually lay-outed like this:
but the dashes don't matter, you can enter an ISBN in almost every ISBN-capable tool without the dashes. Of course, it helps to know that ISBNs usually come with dashes, that makes them easier to spot.
You can enter several ISBNs (so, books) at once, just separate them by a space, as seen in the screenshot before.
It is a funny game (for some minutes) to take a book, find the ISBN (might be on the back, might be inside, on the first 5 pages), memorise the 10-digit-code, put the book aside and then enter the ten digits from memory. It's quite fascinating how easy this is, after a while.
After having typed all ISBNs of all your books, after feeding the data monster with all that delicious data, what next?
Now you want your data back, of course. In the options menu of your bookshelf again, you'll find the option "Export as XML". There you get a computer-readable file which contains the ISBNs you just typed, along book authors and book titles Google found - without any further work! Sadly, this XML file is not human-readable (well, not that human-readable... I can read it, but I don't want to). This is even more uncomfortable if you want to print the information (to have a backup of the metadata, or to have a list of books to show your potential buyer).
There's an easy solution to this problem as well, since I wrote a small CSS file (a "style sheet") for Google Books XML export format, which is easily included. Just download googlebooks.css here (right-click, save-as) and open the XML file with a text-editor (like notepad) to add one line directly after the first line:
<?xml-stylesheet href="googlebooks.css" type="text/css"?>
Also make sure this googlebooks.css file is in the same folder as the XML file (or change the href= accordingly). Then, take a look at the XML file with a web-browser, i.e. Google Chrome. You'll see a nice list of your books, almost ready to print! Before you actually print, take a look at the print preview - some browsers (like my old Firefox 3) are not capable of printing large tables over multiple pages. Google Chrome (in fact, Chromium, the open-source part) printed very well.
Enjoy book organising, sorting, archiving and - most important - reading!
2011-07-02 (2. July 2011)
I was looking for sorting the books i have read.And google book is a good option.Thanks for sharing the details.....
2011-09-17 (17. September 2011)
I would love to see someone write a CSS stylesheet to use that XML file to display the books in Grid view on a website or even off line with book covers.
Sort of like the Shelfari bookshelf. It looks so much prettier as a widget than a simple link to my Google Book list. Elementary teachers would love this.
2011-09-18 (18. September 2011)
@Lucie: With plain CSS it is not possible to add cover images of the books in a grid view but it would be possible to combine CSS with something else (i.e. using some book image provider like Google or Amazon and dynamically generated CSS) or to use XSLT together with locally stored book images. I guess the best solution would be to use any service like Shelfari or LibraryThing, since they support importing a list of ISBNs or Google Books' XML format. I think it wouldn't be so hard to program something pretty - most likely there already are several GNU/Linux tools available to do this, I don't know (yet).
2011-10-18 (18. October 2011)
you should try MyBookDroid or "Meine Bücher Pro"