Mendeley Migration

posted in: Linux, Other, Technicalities | 0

Alreet.Sometimes Mendeley content has to move. There’s no easy way to tell Mendeley that. So.

  1. sudo apt-get install sqlitebrowser
  2. cd ~/.local/share/data/Mendeley\ Ltd./Mendeley\ Desktop/
  3. sqlitebrowser <you@whatever>
  4. Go to »Execute sql«-tab
  5. update Files set
    localUrl = replace(localUrl, 'file:///old/path/‘, 'file:///media/new/path/‘);
  6. click »Execute« (or F5 or ctrl+return)
  7. click »Write changes«
  8. Done. Easy, right?

Thanks to 3.14a...   READ MORE

Automatically batch rename photo files

Following Robert Seale’s advice, I was looking for a solution to batch rename photo files. After my last shoot I used digikam and while the results were as desired, it took a second or more per image, which I thought a bit long. After not finding a different suitable solution I asked the question on unix.stackexchange and was overwhelmed by two people’s in-depth answers. I learned a lot from both mikserv and Gilles and in the end settled with Gilles’ suggestion. I take zero credit for the solution, I don’t even understand parts of what is going on, but I amended it a little bit nonetheless and thought the extended version might help someone.*


What I get when I come home is file names looking like this: _DSC1234.NEF. What I wanted instead was

  1. date-shot in YYYYMMDD-format plus
  2. a descriptive shoot-name plus
  3. image-number

looking like this: 20140708_WeddingAdamAndEve_0001.NEF

There are a few issues with this:

ad 1. Date Shot: sometimes I can only copy and rename the files a few days after shooting, so the date should reflect the date the picture was taken, not the date it was copied. Getting date-shot from the file itself is difficult as there is no birth time recorded. The closest is mtime which is the time the file’s content has last been modified. However, creation date is stored in image file’s EXIF data.

ad 2: Name of Shoot: Ideally I wanted this to be a variable I could set as a parameter when calling the script.

ad 3. Number of Image: This should reflect the age of the image with the oldest one having the lowest number. The problem is that cameras usually restart numbering at  0000 once they hit  9999. So images n-9999 can potentially be older than 0000-n. I needed a solution that would cater for this special case.

The code

# original solution by @Gilles (

# set base path and navigate to "basepath + parameter 1"


Removing Juice from Keyboard

posted in: Other, Technicalities | 0

Recently I bought a faulty pack of grapefruit juice. The plastic nozzle was not glued to the carton properly, so instead of filling my glass, I filled my trusty old Logitech UltraX Premium keyboard. I wiped it clean immediately, but the next day the...   READ MORE

Scholarship Search Engine

posted in: Other, Technicalities | 0

Says Mira Maier, founder of

One in five foundations does not receive suitable applications, thus they don’t know where to put their money.

Another fun fact: 92 % of all applications go to only 0.8 % of all foundations.

Maier?s...   READ MORE