Let’s share books



The easiest way to share book (and still have it for yourself ;)) with your friend is to send it as a file (usually .pdf) by email. That could be a result of a spontaneous recommendation or follow up from some coffee. As said: that’s easy.


The easiest way to share a list of books you have is to make a text file with list of filenames of your collection. The useful list of filenames will have consistent way of describing what’s inside the file. I do that like this:
TitleOfTheBook__FirstLastNameOfAuthor.pdf ,
if there are more authors i do:
and few other conventions (“ed” before the name for edited etc.).

The easiest wat to make a text file with list of filenames from some directory is to use CLI (command line interface) usually using some terminal emulator application. On GNU/Linux that’s usually xterm, on OS-X Terminal.app and on Windows command prompt. Usually green or white text on black background. Many people see that black background as the line they don’t want to cross. Pity. It’s no more difficult then to type few words into Google search.

This is how you can make it:

  1. open terminal application
  2. go to directory with file

    cd /path/to/directory

    or type ‘cd ‘ and then drag&drop path from some file browser (usually in the Title bar) into the terminal

  3. run:
    ls > myListOfFiles.txt

    or on windows instead of ‘ls” use ‘dir’

The file myListOfFiles.txt will appear in the same directory from where you started the command. That’s the file you can share (send by email or publish on the net). Then people can see and search for particular books and then ask you to send them the file 😉

If you are connected in LAN (Local Area Network) with your peers then the easy way to share files is through shared resources usually file server. If that’s the case keep your myListOfFiles.txt on file server and keep it updated 🙂
The improvement which one could expect is the way how the myListOfFiles.txt will be updated. The good way is to have the place where file will sit and where you can expect the latest version. More about that – later ;)Easy. It should work for most of the people and most of the situations.


There are two problems the above approach doesn’t address:

  • the unique reference to the book: the reason why librarians invented ISBN and why we have unique email addresses when sending mails 🙂
  • access to the books and related problem to that: storage.

Even if you do very consistent way of naming your files you still can’t solve the problem of names (e.g. three vs 3), editions and many other meta information which are important to describe the particular book. The step further would be to move from text file into database which will take care of meta information about the book: Title, Author(s), ISBN, Cover image, Publisher, Date/Year of pub…

There are number of services which can help and automatize that process: openlibrary.orgisbndb.comlibrarything.comgoodreads.comworldcat.orgbooks.google.com or amazon. The great news is that some great people did tools which can help in searching, collecting, processing and making databases for your book collection. Namely: Calibre by Kovid Goyal. Calibre: free as in free speech! Fuck yeah Calibre!

Calibre is much more than just helping you to easily and quickly make a database for your book collection. Fuck yeah Calibre! It allows you to export the collection for import to the other online book (social networking) services (e.g. librarything.com orgoodreads.com) or excellent reference management software Zotero. Calibre converts e-books from huge number of formats to to a huge number of formats which is of greatest help if you have any e-reader or tablet/*pad device. But, Calibre also does much more and more about that – later 😉

Here is the screenshot from my collection of books where you can see well structured database/collection, fancy bookshelf interface with covers + a lot of meta information like reviews, summaries etc. which Calibre semi-automatically collected from various online services:


There are at least three other solutions to easily maintain your book collection: online social networking services: librarything.com or goodreads.com and reference management software Zotero. Although the best way to maintain some reference collection is to use just one and never more than one solution, still, my advice is to start with Calibre and then export your book collection to one or more other solutions. The main reason is that Calibre can manipulate files from your hard disk so you can select part of your library convert it, save it to disk, send it to e-reader devices and share with the others. Zotero comes close to that but not close enough 😉


If you are connected in LAN (Local Area Network) with your peers Calibre (again!) can be great solution for sharing the books. In Calibre’s toolbar you just need to click onConnect/share > Start content server and everyone in your LAN can type this in their browser’s address bar:


That will start web server on your own computer which your peers can access and browse, search and download the books:


If you don’t know what’s the LAN IP addres of your computer check this pages: OSX,Windows. In GNU/Linux terminal just type: ‘/sbin/ifconfig’ and look for line ‘inet addr’ after ethX (for cable) or wlanX (for wifi).

If you want to offer access to your Calibre’s library over Internet (outside of your LAN) you could use dynamic DNS but this is a little bit out of scope for this post. Also, you should know that with dynamic DNS you are serving your library as long as your computer running Calibre is online.

This solution is quite efficient for communication in between individuals: one to one.


There are two basic approaches in sharing with the others:

  • social networking style (friends + people who shares the same interests)
  • being member of particular group of researchers (either working together on the collaborative research or just being the member of the same research department)

In the field of social networking around the love and passion for collecting, reading, reviewing, discussing books there are two major players: LibraryThing and goodreads.

LibraryThing is focused on providing the best cataloging experience. I really like the user interface and the easiness of adding, maintaining and exploring the collective database users did on LibraryThing. There is just one (annoying) limit: you can have just 200 hundred books for free. Still, many will happily support LibraryThing because of their commitment and excellence. Annual (typical) fee is around $15 and (typical) lifetime fee is $25. If you are cheap they offer you also to pay a little bit less 🙂

The easiest way to get your whole library from Calibre to LibraryThing is to export/generate Calibre’s catalog in BibTex format and then just import it to LibraryThing. In Calibre toolbar click on Convert books > Create a catalog of the books in your calibre library and choose BIB catalog format. Save the file on your hard disk and then go to http://www.librarything.com/import and upload the file. Voila!

goodreads has simper user interface and they focus more on Facebook-style of social networking. goodreads is the most popular book cataloging web service. You can have unlimited number of books in your goodreads‘s library because it is supported by ads. If they offered importing option for the groups I would recommend it for use in research groups scenario.

The easiest wat to get your whole library from Calibre to LibraryThing is to export/generate Calibre’s catalog in CVS format but you should check in CSV/XML Options just isbn field. That will do the job 🙂 The same like LibraryThing you just upload your .cvs file at http://www.goodreads.com/review/import. Voila!

My libraries are at:


The research scenario (both group and individual) brings few more things to the whole story. The big part of every research is to manage bibliographies and references related to the research topics. Zotero, one more great ‘free as in free speech‘ software, is great solution for sharing libraries inside of the group of researches but, even more important, excellent tool for collecting, managing, searching, sorting and citing. Fuck yeah Zotero!

Zotero “lives right where you do your work – in the web browser itself”. It is add on/extension for the Firefox and ” detects when a book, article, or other resource is being viewed and with a mouse click finds and saves the full reference information to a local file“. The stored references are easily, through one or few mouse clicks, exported into citations and bibliographies (with templates of all major styles).

Zotero offers synchronization of the reference collection with it’s servers so it can be shared in between different computers for individuals but also in between groups of researchers. It gives you a 100 MB of storage for free.

The easiest way to get your whole library from Calibre to Zotero is to export/generate Calibre’s catalog in BibTex format and then just import it to Zotero. In Calibre toolbar click on Convert books > Create a catalog of the books in your calibre library and choose BIB catalog format. Save the file on your hard disk and then go to Zotero’s toolbar click on Actions > Import and choose the file from the hard disk. Voila!

Unfortunately, at the moment Zotero doesn’t recognize File path from Calibre’s BibTex file so I Add attachment > Attach link to file… manually.  That will probably change some time in the future.

To create a group go to Zotero’s toolbar and click on New group… The new group will appear in Zotero’s side bar and you can start drag&drop your references from My Library into the Group library.

This is how it looks in Firefox:



After investing a lot of time and effort into your library and reference catalog you don’t want to lose it. You want to do backup (plan) 😉

For my storage and backup I use “the cloud“:

  • Ubuntu One for the Calibre directory with all of my digital books. Ubuntu One offers 2 GB for free.
  • free Dropbox account for Zotero files so that I can use Zotero’s 100 MB for Zotero’s groups. I needed to connect my Dropbox account with DropDav and this post gave me instructions how to do that. Dropbox offers 2 GB for free.

On both Ubuntu One and Dropbox it’s easy to make a file public so people, who get the URL, can download it easily.

I use Calibre for books which I have on my hard disk and in Zotero I keep the references of the books I’ll download some time in the future.

At the moment, I use Calibre 0.7.43 and Zotero 2.1b5.