The two Johns that defined my teenage gaming years.
A stunning, brilliant videogame trip.
My takeaways from FOSDEM 2024.
Raspberry Pi 3 locking up polling for a missing SD card.
A journey into Stanisław Lem’s space adventure.
In search of a more privacy-friendly e-reader.
If ever there was a “children’s” museum, then this is it.
Assigning environment variables at runtime in nix configurations.
Fully automated network-wide DNS ad blocking for free.
Book review of H. G. Wells’ first novel.
A Paperd.ink digital calendar for the family.
Self-hosting a Fediverse server with honk.
Receiving APRS and running an IGate with a Baofeng UV-5R, a Digirig and Linux.
An isolated and reproducible Ruby development environment for my website.
Uploading tracks and downloading activities without Garmin account.
A simpler website design.
How to package a simple Go application for NixOS.
Building beautiful dashboards with InfluxDB and Telegraf.
Installing GNOME extensions via Fedora’s ‘dnf’ instead of Firefox.
Programming MicroPython on a micro:bit with the kids.
Why I am switching from microformats to RDFa Lite.
Five years ago, I switched from macOS to Ubuntu, last week I hopped to Fedora.
Mount a Clonezilla backup image to restore only a few files or folders.
A new hobby.
Replicate !bang searches locally in Firefox.
Using a kilowatt meter with S0 contacts to log Voltage pulses via MQTT.
OpenStreetMap alternatives for maps and navigation.
Book review of Andy Weir’s latest novel.
Programming, possibly illegal, Baofeng GT-22 walky-talkies.
Change Microsoft’s Edge browser’s home page to a blank page.
Opting out from Google’s Federated Learning of Cohorts in Ruby on Rails.
Playing Matroska files via Synology’s DS Video app on iOS.
Abusing a website API to give my kids an edge.
What does it cost to host this blog?
Converting videotapes to digital files for viewing, archiving, and sharing.
Rules and habits around smartphone use at home.
Quickly add a transparent image to a PDF file from the command-line on Linux using qpdf or PDFtk.
Temporary access to private files in Backblaze B2 with secure links.
Cross one off the bucket list: replacing my old kitchen chair with a Herman Miller Aeron ergonomic office chair.
A visit to an impressive hidden radio telescope in the German Eifel mountains.
Using an SDR dongle to listen to weather images from NOAA satellites.
Using ecdsa-sk or ed25519-sk combined with a hardware security key for multifactor SSH authentication.
Introducing web development to my two younger kids.
Firefox 73 has a built-in server-specific browser mode.
Using pdfsandwich to OCR PDFs from the command-line.
Implementing network-wide ad-blocking with a Ubiquiti UniFi Security Gateway (USG).
Live streaming on a budget with OBS and an iPhone.
A list of my currently installed, privacy-focused, Firefox extensions.
Given the i3 window manager another try after my failed attempt 12 months ago.
Use a unique email per service, like you do for passwords.
Enable website dark mode in browsers on Linux.
Visit to Villa Empain, Art Deco in Brussels.
How to add or remove access cards on a JSM Technologies WAVE 500 garage door motion receiver.
Dos and don’ts for beginning programming job interviews.
Introduction to IPFS, the distributed web.
Switching to a tiling window manager on Ubuntu.
Eleven years of blogging, a retrospective.
Programming CODAv, my first native desktop Linux application.
Whitening old LEGO bricks with hydrogen peroxide.
Running ARM Raspian in a QEMU virtual machine.
First experience of switching to desktop Linux from macOS as a web developer
Connecting to a WiFi network from the Ubuntu command-line terminal, without a graphical interface.
Discovering Palmer’s Penmanship coursebook (1919) as a web developer.
Installing a Drone continuous integration (CI) Ubuntu 14.04 server.
Configuring mutt as a text-based e-mail client.
Setting up Strict Transport Security in Ruby on Rails 4.
Books I read in 2014.
Archiving as much as possible before online services go dark.
Debugging e-mail sending issues only to learn my VPN blocked outgoing traffic.
Formatting errors with Ember’s ActiveModelAdapter.
Leaving Apple and switching to Linux as my main OS.
Find the public and private key for a Bitcoin address in Bitcoin Core.
Automatically highlight words in Vim to spot them easily.
Creating a Bitcoin multi-signature address with Ruby.
Getting started with the Bitcoin testnet.
Using MongoDB in production via MongoHQ.
Frequent donations to open-source projects.
Keeping simple timesheets.
Measuring solar panels with a Flukso utility meter.
Generating invoices in LaTeX.
Fixing the Ruby 1.9 “certificate verify failed” error.
A basic €60 laser printer.
Reviewing a crappy cheap WiFi camera.
Opening our parking’s lift gate with an Arduino and smartphone.
What is an FTDI adapter?
Overriding default Backbone getter to more complex logic.
Beware of spaces when passing Rake arguments.
Compress assets during Rake deploy.
Using Capybara for unit, instead of acceptance testing.
Force Ruby’s Capybara gem to make an HTTP POST request even when it’s not recommended.
A homebrew color changing lamp with Arduino.
Most tutorials will explain how to send data from an Arduino to a computer, what about the opposite?
Upgrading my Lightroom export plugin to support Lightroom 3 and Mac OS X Snow Leopard.
Using Capybara’s ‘click_link’ to open a link or button without text.
Configuring UTF-8 to fix incompatible character encodings.
Using the Ruby God gem to monitor a Sphinx search deamon.
Getting up and running with Sinatra, DataMapper and the new RSpec.
Please donate a few bucks to the “Rails 3: Appreciate with Charity” campaign.
Plotting a GPS log as a SVG image with Ruby.
Getting started with functional tests in Ruby on Rails.
Ruby on Rails 3 depreciates the ‘error_messages_for’ method.
Comparing model validations between Ruby on Rails 2 and 3 with composite database keys.
A quick look at the ‘shuffle’, ‘rand’ and ‘sample’ array methods in Ruby.
Configuring Xcode to build for 64 instead of 32-bit architectures.
Ruby one-liner to calculate how many days there are in a month.
Create multiple versions of an image in Ruby on Rails with Paperclip.
Use applications on different computers by synchronizing data via Dropbox.
Review of the 2009 Rupy conference in Poznań.
A list with all Belgian iPhone and iPad apps I could find.
Our entry for the 2009 RailsRumble programming competition.
Switching service providers for my Belgian home internet connection.
The iOS apps installed om my smartphone.
Using Sparkle, a software update framework, in a Mac OS X Cocoa bundle.
A power strip with USB plug, but is it real?
A BarCamp in the Antwerp Zoo.
Announcing twiist, a web conference in Leuven, Belgium.
Send an iPhone vCard contact via mail.
“Wikis and Classification, or Water and Fire?” meeting notes.
My experiences from this weekend’s BarCamp in Antwerp.
A tiny Mac OS X application to automatically open a Poken when connected.
Save perferences for a Mac OS X bundle.
First review of the Poken USB ‘business’ card.
Ideas to replace paper business cards with something more automated.
My BarCamp Ghent experience.
Could Twitter play a role as a new source?
Is it time for a mobile revolution?
Review of yesterday’s Mobile Monday presentations in Brussels.
Impression from some of the pitches at the Belgian TechCrunch event.
Impressions from Mobile Monday 8 at Amsterdam.
Generate an image of a map based on your current Dopplr location with Ruby.
Proposal for a Flemish top-level domain by the NV-A.
Setting up a multi-tenant Drupal using subdirectories instead of subdomains.
Mozilla rolling out location awareness in Firefox.
Refreshing corporate communication by entp.
Impressions from the Adobe CS4 launch event with Aral Balkan.
Impressions from the dConstruct conference in Brighton.
Today marks the first-year anniversary of this site.
Comparison of barcode scanner apps for iOS.
A list of my favorite Mac OS X applications.
Adding Google Contacts and hCard exports to our Lustro application.
A new home for our Mac OS X applications.
Break a record and help the web by downloading Firefox 3.
Proposal to add a TTL attribute to RSS feeds.
Web application to scan websites for spelling errors.
Adding GPS coordinates to an RSS feed.
Generating an image of a map with my current location.
Small taskbar application for Mac OS X to quickly rate your iTunes songs.
An effortless service to share larger files over the internet.
Building a social graph with Ruby on Rails Google’s Social Graph API.
Gem issues after upgrading to Ruby on Rails 2.
Making a simple cardbox diffuser for my camera.
Mobile Safari alternative for RTM’s to-do list application.
Create even smaller Mac OS X disk images via the command line.
Our French iPhones finally work in Belgium without jailbreaking.
An optimized mobile Wikipedia for iPhone.
Color coding for Freemarker templates in TextPad.
An Adobe Lightroom to iPhone export plugin for Mac OS X.
How we bought an iPhone in France… as Belgians.
My review of the Mac OS X Leopard Tech Talk in Amsterdam.
Microformats: Empowering Your Markup for Web 2.0 by John Allsopp.
Getting up and running with RMagick on Mac OS X.
Helping search engines by adding a sitemap to my website.
Adding photos to my website via the Flickr API.
Add HTTP compression to all Ruby on Rails requests.
Ever wondered why none of the Ruby on Rails websites run on Apache?
Automatically update Technorati when publishing new posts.
Attention points to check off before launching a website.
What are the differences between the AddHandler and AddType Apache directives?