It’s early May and it’s been colder and wetter than previous years, though the short periods of hot weather we did have were quite hot, with rapid and frequent transitions between the two extremes.

I’m sure it’s nothing to worry about and that the summer / autumn won’t be unbearably hot.

Fighting enshittification

A few days ago I finished reading Cory Doctorow’s Enshittification (purchased from his own (shop.craphound.com)[shop.craphound.com], DRM free, which is the only way this book should ever be purchased if you’re a fan of the concept of enshittification). It was essentially a long form write-up of his recent talk on the “post-American, enshittification-resistant internet” (which I greatly enjoyed), but with a lot more examples and anecdotes.

After reading it I felt like doing a bit of my own fighting against enshittification, so I dug out an old RaspberryPi 4 I had lying around and bought a new case for it (Argon ONE V2). I got the case because it has a metal top with pretty good passive heat dissipation, a software-controlled fan (that essentially never runs unless the Pi is under load), as well as a bunch of other features I didn’t really care about it - it was mainly just heat management for me.

Once set up (and after disabling bluetooth, lightdm and accounts-daemon, which were generating an unnecessary amount of heat due to the CPU idling at 40-60%), I installed Pi-hole and switched the home network over to it.

Fun fact - as I was doing this, the DNS would time out when I’d try to run nslookup google.com 192.168.0.120 or the equivalent dig command, and I couldn’t figure out why. I decided to give ChatGPT a go at the problem, since it sounded like something that would surely have come up at least a few times in its training data. Lo and behold, after a few messages back-and-forth, it suggested using dig @192.168.0.120 google.com +short and +tcp in order to test the DNS using both UDP and TCP. I wasn’t expecting any differences between the two, but then - surprise! I got a reply back when using TCP! Apparently it was just the UDP calls that were failing. ChatGPT then (correctly) suggested that this was due to my workstation being connected to the company’s VPN for working from home, which was essentially capturing all DNS traffic and routing it to the company’s DNS servers in order to prevent DNS leaks. Thanks ChatGPT!

Supposedly Pi-hole will not only disable ads that some adblockers struggle with (such as the video ads on Twitch) or on devices with no adblocker (such as TVs or mobile apps), but it should also make browsing faster due to the faster DNS resolve and not having to wait for replies for DNS calls used to eventually serve ads. I can’t say I’ve noticed the speed-up (I most certainly didn’t measure anything, thank you very much), but the internet does look cleaner these days.

Parking saga continues

I wrote about my issues with the IT system for parking in my area in my previous blog post. Hopefully you enjoyed that, because I have more to say on the subject.

A few weeks ago my request for a paid parking spot (a dedicated spot, as opposed to whatever spot may or may not be available at the time - and often no spots are available at all) was granted. Fantastic news - I paid for the parking spot and moved the car. About two weeks later I received a warning from police that I had parked on a residential parking spot (that parking was non-residential) assigned to someone else (all of the spots in that parking spot are unassigned, meaning that anyone that has paid the subscription to that parking lot can park in any space in the lot). Clearly the police had a different idea about how parking worked in that specific lot compared to the Parking Administration.

What followed were a number of calls between myself, the Parking Administration and the police, in which I was told a variety of theories on why I received the warning (perhaps I had parked in a totally different parking lot? perhaps I got the ticket when parked somewhere else and only noticed it after I drove back to the lot?). My favorite was when the Parking Administration wanted to end the call saying that what I complained about was literally impossible.

At one point someone from Parking Admin mentioned that she could see I had spot X assigned in that lot, which immediately triggered alarm bells. Upon further questioning she described how the assigned spot was just used in the backend for the Administration to track how many spots were in use, but that anyone that purchased a spot in that lot could park anywhere. She assured me that the police did not have access to this internal tracking system and wouldn’t be able to see that I had a specific spot assigned.

I’ve dealt with enough wonky system integrations to suspect this was the cause of my woes.

Upon further conversation with the police I confirmed that they were absolutely able to see I had that specific spot assigned and, at the same time, they weren’t aware of the rules that governed how parking worked in that specific lot.

In the end the Parking Administration promised they would clarify with the police on how parking worked in that lot. An eternal optimist, I await my next warning from the police.

In other news

I’ve discovered Kotlin.

Specifically, while looking over some open source projects (the RIFT intel tool for EVE and Feeder, a RSS app for Android) I came across Kotlin and realized I knew nothing about it. I’m now going over Kotlin In Action (2nd edition) and yeah, so far so good, the language has some nice features. It’s been a long time since I learned any new language, so this seems like a fun distraction.

Unrelated to the above, I was in the mood for replaying StarCraft 2. Halfway through the Terran campaign I also felt like giving the Diablo 4 storyline another go (never managed to finish, having quit around Act 2). I’ve now completed the main campaign and I’m going through the first expansion pack. Once that’s done I still have the new expansion pack that just came out, so I’ve plenty of story left to go through.

And I have to say, Blizzard makes the best cinematics. Diablo 4 for example has a cinematic that’s 8 minutes long and all of it is fantastic.