Posts

    •  
    • 8 minute read

    While it may not always feel like it, two years have passed and and a new Ubuntu release somehow has rolled around. That means it’s time for me to upgrade my VPS again. Contrary to last round, the first point release actually lined up with my planned time off quite well, so I got to upgrade straight away. It went quite smoothly this time, but I’d like to go over the peculiarities that happened.

    •  
    • 24 minute read

    If you need to ensure that a particular piece of data is only ever modified by one thread at once, you need a mutex. If you need more than one mutex, you need to be wary of deadlocks. But what if I told you that there’s a trick to avoid ever reaching a deadlock at all? Just acquire them in the right order!

    •  
    • 10 minute read

    After about 13 years of service, my trusty laptop finally gave out and it was undeniably time to get a new one. I am personally of the opinion that all money spent on laptops is wasted, but now I found something that was nice enough to do the bare minimum and sufficiently on sale to justify. And because the CJEU continues to disappoint it came with a Windows license. While I don’t really need Windows on my laptop I am also way too Dutch to destroy something I’ve paid for so now I this machine will be a dual boot. The last time I’ve set Windows up on a new machine was back in 2014, so let’s see how things have changed.

    •  
    • 26 minute read

    Yet another year has past, yet another Advent of Code has been bestowed upon us by Eric Wastl. This time Santa has accidentally dropped the keys to his sleigh into the ocean somewhere and with your track record you are just the person to call in such circumstances. If nothing else, at this point you should have been conditioned to not question the logic of keys to a sleigh. Maybe he chains it to a pole for security.

    •  
    • 8 minute read

    It’s not unusual for a service to need access to some kind of configuration, or for that configuration to contain passwords that you’d prefer not to leak. The solution is simple: create a configuration file somewhere, make sure that it’s only readable to the user the service runs at, and you’re done. And then you find out about DynamicUser services, which is where the fun begins.

subscribe via RSS