Research papers are almost as crucial as oxygen and instant noodles for PhD students. We get to find out about the ‘state of the art’ through reading articles, journals and conference proceedings. These items generally come in the form of PDF files.

When I first started my PhD, I would print out every single paper I was interested in, highlight bits and take notes on the margins. This worked fine for the first few weeks but it wasn’t long until I realised this wasn’t very practical.

I’ve had my eye on the Kindle for a while when Amazon released the Kindle 3 with 3G and Wifi at a sensible price. I went for it thinking it would be an awesome little device for storing my bibliography in. The free worldwide 3G coverage was also an interesting point and I can confirm that it works remarkably well for basic tasks like checking emails on-the-go :)

Kindle’s PDF viewer does a good job for majority of the documents but the screen size causes a bit of a problem with the standard two-column layout of papers I usually read (IEEE and ACM styles). I end up spending most of my time trying to find an optimal zoom level and scrolling madly as the awesome text-resizing feature of Kindle doesn’t work with PDF files.

Luckily, Amazon has a document conversion service that translates the PDF into the native Kindle format (which lets you use text-resizing and even text-to-speech!). All you have to do is send an email to your kindle address with the subject line “Convert” with the document attached. After a while the converted document appears on the device.

If you’ve accumulated a bunch of these things, emailing them individually might take some time (I’ve had unreliable results with multiple attachments per message). Here is a quick and dirty shell script for automating this mundane task:

#!/bin/bash

kindle_email="(your_id)@free.kindle.com"

total='ls *.pdf | wc -l' counter=1

echo "Total number of PDFs: $total"

for pdf in *.pdf do echo -n "Sending ($counter/$total): $pdf"

  echo | mutt -s "Convert" -a $pdf -- $kindle_email 2>/dev/null

  if [[ $? -ne 0 ]] then echo " > ERROR!" else echo " > Done." fi

  sleep 20

  ((counter++))

done

[caption id=”attachment_226” align=”alignleft” width=”150” caption=”Sending…”][/caption]

Copy this script into your folder of PDFs, change the kindle_email variable and you’re good to go. You will need to make sure that mutt is configured properly for sending emails and the email address used for sending these messages are defined in your Kindle account.

You will notice that I’ve put a 20 second delay between sending messages as I wasn’t sure how Amazon would react to receiving quite a few conversion requests from the same address. You may want to experiment with that value to speed up/slow down the process.

[caption id=”attachment_228” align=”alignright” width=”150” caption=”Freshly converted papers”][/caption]

Another thing to keep in mind is to use your ‘free.kindle.com’ address to avoid any data charges. My understanding is that as long as you are connected to a Wifi access point Amazon won’t charge you for delivering the converted documents.

The result? A fresh batch of papers on your Kindle!


Here is a quick video of text-to-speech and text resizing working on a converted document. (I can’t publish the original document for copyright reasons but for those of you with access to IEEE Explore or a similar service, here is the DOI)

Kindle for Research Papers from Omer Kilic on Vimeo.