Koen van Hove
banner
koenvh.nl
Koen van Hove
@koenvh.nl
Computer person who likes toying with networking, security, and data. Also creates software that is sometimes useful. Opinions are my own.
Mijn smartwatch is aangekomen en: het werkt. Ik kan nu elke minuut (voor 20:26) een gebeurtenis zien uit dat jaar. Staat nog niet in de Play Store, maar de code is hier te vinden: github.com/Koenvh1/Hist...
February 12, 2026 at 7:25 PM
Spotify heeft aangekondigd dat hun API vanaf maart alleen nog zal werken met premium [1]. Dit heeft ook effect op het Rijkspodcastregister, dat niet meer zal werken. Als iemand nog een API key overheeft hoor ik het graag.

[1] tweakers.net/nieuws/24449...
[2] rijkspodcast.koenvh.nl
Spotify vereist voortaan Premium voor api‑toegang
Spotify gaat een Premium-abonnement vereisen voor api-toegang tot zijn dienst. Ook kunnen ontwikkelaars minder data opvragen via de api. De beperkingen kunnen onder meer gebruikers treffen die smartho...
tweakers.net
February 10, 2026 at 6:00 PM
In de categorie impulsaankopen heb ik nu een tweedehands Samsung Galaxy Watch 4 gekocht zodat ik m'n wijzerplaat ook in het echt kan testen. Vanwege de manier waarop het Watch Face Format (WFF) werkt, heb ik een keten van ternaire selectieoperators van 899 KB groot (4941 mogelijkheden).
February 7, 2026 at 11:29 PM
Ik ben bezig met mijn historische klok [1] om te vormen naar een wijzerplaat voor Wear OS [2]. Het lijkt te werken, maar de ironie is dat ik zelf geen horloge heb waarmee ik het kan testen.

[1] koenvh.nl/playground/h...
[2] github.com/Koenvh1/Hist...
February 7, 2026 at 8:14 PM
Nine years ago I made a website to play Lingo, with the last commit seven years ago. GitHub told me that four days ago someone forked it and is now continuing development. The fact someone found it let alone forked it surprised me greatly.

It's still online and can be found here: lingo.koenvh.nl
Lingo
lingo.koenvh.nl
February 5, 2026 at 9:41 PM
Continuing from yesterday: here is one of the problems I run into. The zone starts at that sign, but if you exit at the bottom right, the zone never ends. My algorithm subsequently considers everything as part of the no parking zone. Some signs that are there IRL are missing form the DB.
February 2, 2026 at 9:32 PM
I have been trying to use the national traffic sign database to map where street parking is allowed. I thought my algorithm was wrong at first, but it turns out quite a few no parking zones never technically end because the signs are missing (both in the database and in real life).
February 1, 2026 at 11:35 PM
Fun fact: Dutch traffic sign F16 (end of carriageway or lane reserved exclusively for trams) appears a grand total of 1 times in the Netherlands. Specifically here: www.openstreetmap.org?mlat=52.3601... / www.google.com/maps/search/...

This makes it the least commonly used road sign in the country.
February 1, 2026 at 5:19 PM
I updated my website to make it better reflect what I'm currently up to, as well as get the styling a bit more consistent. One problem: my current website is now ~10 years old, and getting the build tooling working (or just finding the docs) is becoming difficult. Hurray for web dev.

koenvh.nl
January 28, 2026 at 10:13 PM
A new update for ScreenDeck is now available on the Elgato Marketplace, now featuring support for local streams and volume control: marketplace.elgato.com/product/scre...
ScreenDeck | Elgato Marketplace
Show a (live)stream on your StreamDeck. Combine one or multiple tiles together to turn your Stream Deck into a display you can play video on.
marketplace.elgato.com
January 26, 2026 at 8:44 PM
Utterly adorable!
January 26, 2026 at 11:47 AM
I played a "game" called TR-49 this weekend. It's an interactive story where you enter four character codes into a machine to discover books to slowly untangle the story behind it all. It stays interesting pretty much the whole way through and does not overstay its welcome. Can highly recommend.
January 25, 2026 at 10:47 PM
I finally got around to making a quick write-up of my DVDgotchi project, where I made a Tamagotchi clone out of DVD menus. You can read it here:

blog.koenvh.nl/dvd-menus-an...
DVD menus and Tamagotchis
For a long time I’ve been fascinated by DVD menus. VHS tapes and streaming video just start when you insert them (as long as they last person remembered to rewind them), which is functional but boring...
blog.koenvh.nl
January 18, 2026 at 8:11 PM
I just updated my blog to make it slightly more obvious that there is an RSS feed that contains the blog posts in full, in case you don't want to leave your RSS feed reader. It can be found here: blog.koenvh.nl/rss.xml
blog.koenvh.nl
January 18, 2026 at 3:07 PM
I've been trying to find out how realistic it would be to make my own 300 baud* dial-up software. Step one: generating audio and reading it back in (with added background noise). So far it seems to work, surprisingly. DFT feels like magic.

* 300 bps should be enough for everyone :-)
January 11, 2026 at 11:14 PM
I know far more about rsync know than I reasonably should, so I figured I would make a write-up on all the things you technically could do with rsync, but you probably shouldn't.

blog.koenvh.nl/what-you-can...
What you can (but shouldn't) do with rsync
rsync is quite an amazing tool to sync files from one location to another remote location, and that for nearly 30 years. Just to be clear, this article is not trying to bash rsync (or /bin/bash rsync ...
blog.koenvh.nl
January 10, 2026 at 8:24 PM
I use Hashnode for my blog, and recently they changed the styling which wasn't to my liking. Luckily they also offer a way to make your own front-end (using Vercel), and after a bit of tinkering it is now working: blog.koenvh.nl

Frankly I think it's an improvement over what it was like before.
January 7, 2026 at 9:29 PM
Happy New Year to everyone: to those now catching their breath after a time of fun festivities, as well as to those who - like me - are glad things are going back to normal again.
January 1, 2026 at 7:31 PM
DVDgotchi is now available on DVD. Ironically I did not have any writeable DVDs left over in a cupboard, so I had to order new ones, along with some DVD labels and sleeves. I think this basically completes what I wanted to do with DVDgotchi :-)
December 31, 2025 at 8:38 PM
With my newfound of DVD programming I had to create something, and it now actually works:

Introducing the DVDgotchi. A tamagotchi clone implemented entirely using DVD menus. Works on any DVD player (and VLC).

Source code and ISO available on github.com/Koenvh1/DVDg...
December 29, 2025 at 12:12 PM
Since 2019 I have made custom Christmas cards. This year was no exception. I decided to "write" a blog about them:

blog.koenvh.nl/christmas-ca...
December 26, 2025 at 8:46 PM
Recently I've been looking into how DVD menus actually work, it's quite fascinating. A DVD player effectively runs a small VM where there are 16 16-bit registers that can hold variables. Buttons can set/read those variables. The standard library consists of only random number generator.
December 24, 2025 at 1:24 AM
One of the things rsync does filter out are all the control characters before 0x20 except for \n and \r (when they appear at the end). This sadly means I can't use ANSI escape sequences to clear the screen. I did manage to play an ASCII version of Bad Apple!!, albeit slightly flickery at times.
December 22, 2025 at 11:32 AM
In further toying around with the rsync protocol, I have now managed to make it display more or less arbitrary text. Of course I quickly had to recreate the famous scene from The Matrix.

(And for the DNS people, this means I can likely make the DNS over rsync output compatible with dig)
December 21, 2025 at 4:05 PM
Because I felt bad for all the DNS people having to miss out on the joy of working with rsync, I started on a DNS resolver over rsync. It should be mostly functional already.

Feel free to try it out. The records appear as files, and the time is set to when the TTL will expire.
December 17, 2025 at 12:41 PM