Skip to main content

Ubuntu Cloud Images on Proxmox

I’ve been clicking through the Ubuntu installer on Proxmox since 2019 – I even wrote a note to myself back then about the dance. Partition the disk, pick a locale, wait for packages, reboot, SSH in, install the things I always install. Ten minutes per VM, every time. What finally pushed me to fix it was wanting ephemeral Ubuntu VMs for …

Read More

Leaving the Cloud (Again)

Digital sovereignty is becoming an increasingly hot topic, and people are starting to wake up to just how large the premium is for “cloud” versus simply running a few dedicated servers. For me, this is full circle – not in the technology, but in the operational model. I’ve been managing my own servers since I was running FreeBSD jails …

Read More

Making Apple Health Data Queryable with AI

Long before ChatGPT, I was obsessively collecting health data. Blood work going back to 2018—some in PDFs, some in spreadsheets. On the device side, I’ve cycled through Whoop, Withings, and others, all feeding into Apple Health. Over the years it’s become the central hub for everything: heart rate, steps, workouts, sleep, body composition, blood …

Read More

AI is Eating SaaS: Building an IP Geolocation API in Two Hours

We’ve all heard the saying that AI is eating SaaS. For some simple products, it’s certainly becoming true. At Screenly, we’ve been using ipgeolocation.io for a while. It’s a solid service, but at its core, it’s just a frontend for a GeoIP database. This morning, I saw yet another monthly invoice from them and decided to run an …

Read More

How I Streamlined My Jekyll Diagram Workflow with D2 and Bun

Over the last few days, I gave the sbomify website a much-needed overhaul. The previous iteration didn’t really reflect what we’re doing, especially as the product has matured. The new version leans heavily on diagrams to communicate concepts more clearly. For the past year, I’ve more or less standardized on d2 for diagrams. I’ve gone through the usual …

Read More

PostgreSQL Replication Troubleshooting: War Stories from the Field

I recently wrapped up a consulting gig helping a client troubleshoot some gnarly PostgreSQL replication issues. What started as a “quick performance tune” turned into a deep dive through WAL checkpoints, replication slots, and the delicate dance of logical replication workers. Here are the war stories from the trenches, complete with the errors …

Read More

DSLF – a rust hacking, cheaper hosting, and two HTTP codes I didn’t know about

I hacked together DSLF today because paying a monthly fee for a plain 301 felt silly. It’s a tiny Rust service that reads a CSV and spits out redirects—nothing more. In the process I learned that HTTP has two “new” redirect codes that slipped past me years ago. Four ways to say “go over there” Old code New code Keeps the HTTP method? 301 308 Yes 302 307 Yes …

Read More

Codex manages my podcast

When I started my podcast a year and a half ago, I looked at the tools available. For those not familiar, for many platforms (like Amazon Music and Apple Podcasts) you need to provide an RSS feed with your podcast. Now, there is no shortage of platforms that will gladly sell you this. But essentially, what you’re paying for is a thin layer on top of S3 …

Read More

All Roads Lead to DSLRs

I’ve been running my video podcast Nerding out with Viktor for about a year and a half now, with just under 50 episodes published. When I started out, I tried to keep things simple and cheap. I used my Logitech Brio 4K webcam - a webcam that I picked up during COVID. Not long after, I upgraded the audio by adding a dedicated microphone, the …

Read More

From Gateway to Dongle: Lessons from My Home Assistant Overhaul

I’ve previously written about my experiences with Home Assistant here and here. This article follows up on those posts and describes my current setup. Today, my stack includes Home Assistant (HA), Zigbee2MQTT (Z2M) and the Mosquitto MQTT server, all running in Docker with Docker Compose on a VM. Here are some things I’ve learned, which would might save …

Read More

Sonar Is Back: A Fresh Take on BLE Device Counting

I’m excited to share that I’ve just given Sonar—a FastAPI-based BLE device counter I built years ago—a full overhaul and relaunched it as an open-source project on GitHub: https://github.com/viktopia/sonar Why Sonar? When I first created Sonar, the goal was simple: track Bluetooth Low Energy devices nearby to estimate foot traffic in a space …

Read More