Skip to content

Category: Technology


I've been struggling with the decision whether to start a microblog or not. Actually, I had already decided ‘yes’, but then had trouble deciding the software or on-line platform. I actually preferred a self-hosted solution (otherwise, I'd feel the need to backup or even mirror everything myself anyway). Trying to choose a solution took me so much time that I actually reconsidered the need for microblogging. What is it, after all, that attracted me to it? Read More »

Tracking WordPress in a Subversion vendor branch

Two months prior to writing a script to upgrade MediaWiki installations using Subversion vendor branches, I wrote something similar for WordPress. It's a little bit more limited and should really incorporate some of the improvements made for the MediaWiki version, but it worked fine so far: Read More »

Removing unwanted grey values in scanning white papers

When doing automated scanning, like I do to for properly organizing paper administration, the resulting images can get quite large because the background has near-white information that is still very complex to save. Imagemagick has nice solution for that; -white-threshold x%. It also has -black-threshold, should it be necessary.

Read More »


If you've never heard of reCAPTCHA before, reCAPTCHA is a free CAPTCHA service that helps to digitize books, newspapers and old time radio shows. I'm using reCAPTCHA on this and other blog to protect myself from automated spam comments. I'm also using it on some of my MediaWiki sites to protect myself from wiki spam. Read More »

Stichting EcoSafe is a Dutch foundation for the safe-keeping of the funds that are necessary for the maintenance of hardwood plantations. In July of 2006, together with Johan Ockels, I created a website for the Foundation. Johan was responsible for the organization of the whole process. This went very smooth and the website ended up being an emblem of simplicity and clarity. That's why I wanted to blog a bit about it now, even though there are a few things that I'd probably end up doing different if I were to start from scratch. [There's actually a disturbing number of things for which this is true, I'm coming to notice.] Read More »

XKB compose sequences

I just ended a post about inserting special characters in VIM with the remark that I should find out how to insert special punctuation marks using just XKB, so I set out to find out how to add these to the list of existing compose options for XKB. Turns out that I should have simply taken another look at the configuration file for Compose mode (/usr/X11R6/share/X11/locale/en_US.UTF-8/Compose on my system). Read More »

VIM tips for editing prose

I was transcribing a draft for a manuscript. Using VIM, of course. But, I found my VIM skills to be lacking somewhat, enough to become sufficiently annoyed to investigate the holes. Read More »

PHP fgetcsv() behavior on empty lines

The PHP documentation for fgetcsv() states that A blank line in a CSV file will be returned as an array comprising a single null field, and will not be treated as an error. Here's a quick demonstration of this behavior. Read More »

Expanded output in MySQL prompt

When you have tables with a large amounts of columns, it can be easy to show the columns vertically, as opposed to horizontally. In Postgresql, you can toggle this with \x. In MySQL it's a little bit different. Read More »

Change in law regarding cell phone contracts

Cell phone providers in the Netherlands always try to screw you as hard as they can. The way it was, they were able to automatically extend your contract for another year. The way they screwed you here, is because when you sign up for a new contract, you often get discount. I for instance, was able to get a service worth € 17,50 per month for € 12,50 (240 minutes), the entire year. But, when the contract period would end, my contract would be extended automatically and I would pay € 17,50 per month for a year. You had to remember to call KPN before the contract would end and manually extend the contract to receive another discount. Read More »