Things I build, break, fix, and write about

1 September 2026
Metadata schema choices for content libraries

Structured metadata only works when it matches how people actually retrieve content. I have seen neat schemas fail as soon as the library meets real records, and tarot makes the problem obvious. If the fields do not support search, filters, and odd edge cases, the catalogue stops being useful.

31 August 2026
Federation trade-offs in self-hosted social feeds

Federation looks tidy until you let it touch the edges, and then the odd cases arrive fast. I prefer self-hosted social feeds that stay explicit about...

31 August 2026
FireAvert Z-Wave stove shutoffs for offline safety

FireAvert’s setup does the part that matters without asking Home Assistant to babysit it, which is exactly how I want stove protection to behave. The...

31 August 2026
Weekly Tech Digest | 31 Aug 2026

Stay updated with the latest in tech! This digest covers AI ethics, auto industry shifts, and the impact of politics on technology, exploring today's...

Latest blog posts you might like

25 May 2026
Weekly Tech Digest | 25 May 2026

Stay updated with the latest in tech! This digest covers AI ethics, auto industry shifts, and the impact of politics on technology, exploring today's pressing issues.

24 May 2026
Detecting node contention with Pressure Stall Information

Kubernetes PSI metrics are useful because they show waiting, not just work, and that is where the awkward node problems usually hide. I trust them more than busy-looking charts, but only after I have...

24 May 2026
Topology-aware scheduling with PodGroup and DRA

Kubernetes PodGroup scheduling only makes sense once you stop treating the group as a template trick and start treating it as live state. I like that split, because it forces the scheduler to deal...

23 May 2026
Kubernetes Service externalIPs deprecation and replacements

Kubernetes Service externalIPs has always been a bit too trusting for my taste, and 1.36 finally starts treating it that way. If you still rely on it, now is the time to move the address ownership...

23 May 2026
Mixed Version Proxy during Kubernetes 1.36 upgrades

Kubernetes Mixed Version Proxy is one of those fixes you only notice when it is missing. During a 1.36 control plane upgrade, it stops an older API server from handing out tidy little lies, the sort...

22 May 2026
Weekly Tech Digest | 22 May 2026

Stay updated with the latest in tech! This digest covers AI ethics, auto industry shifts, and the impact of politics on technology, exploring today's pressing issues.

22 May 2026
Measuring route_controller_route_sync_total in Kubernetes

`route_controller_route_sync_total` is the sort of metric I trust only when I put it next to real node activity. By itself it tells you little; alongside churn, it shows whether the route controller...

22 May 2026
Incident response after GitHub code exposure

A GitHub internal repositories breach rarely starts with the code itself, it starts with a weak boundary and ends in places people forgot to check. I care less about the headlines than the tokens,...

21 May 2026
Rebuild WinRE trust after CVE-2026-33825 changes

BitLocker zero-day mitigations are easy to half-apply and then forget, which is exactly how trouble lingers. I had to rebuild WinRE trust after CVE-2026-33825 changes, because removing autofstx.exe is...

21 May 2026
Malicious VS Code extensions and workstation compromise

Malicious VS Code extensions do not need to look suspicious to do damage. I care less about the marketplace listing and more about what the thing can reach once it is installed, because that is where...