All Posts

119 commits in one day: what happens when AI meets GitOps without guardrails

January 2026 — a post-mortem on why your branch protections mean absolutely nothing when an AI is at the wheel It started with a reasonable idea I run a self-hosted Kubernetes cluster.

Docker as a factory: fixing broken GPU software without touching the OS

January 2026 — when a friend’s astrophotography software broke and the internet said “reinstall Ubuntu” A friend of mine called me with a problem. She had a new machine with an RTX 5060 Ti, PixInsight installed natively, and BlurXTerminator — a GPU-accelerated AI denoising plugin for astrophotography — completely broken.

One curl command to a GitOps-ready RKE2 cluster

December 2025 — because “fresh cluster” should not take a day Every time I’ve needed to spin up a new Kubernetes cluster — new hardware, new lab environment, disaster recovery test — I’ve gone through the same ritual.

85 dB at 100 metres: measuring what Amsterdam pretends it can't

October 2025 — on being told the noise is fine while holding evidence that it isn’t There is a specific kind of frustration that comes from a government that is simultaneously collecting your taxes and telling you that the problem you’re experiencing isn’t a problem.

Zero to observability in a Java app: OpenTelemetry agent, Prometheus, and Grafana Tempo

September 2025 — adding real observability to a Java service without touching a line of application code Logs tell you something happened. Metrics tell you how often.

Your IoT sensors deserve proper observability: MQTT to Prometheus with a Helm chart

May 2024 — because your home produces data worth keeping Smart home devices generate a constant stream of data. Temperature readings, power consumption, motion events, CO₂ levels, humidity.