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

30 May 2026
Cloudflare Tunnel for local webhook previews

Cloudflare Tunnel is one of those tools I only appreciate after fighting without it. For local webhook previews, a stable hostname matters more than a tidy demo link, and once you need that fixed...

30 May 2026
Cloudflare Artifacts repo-scoped tokens in Wrangler CLI

Cloudflare Artifacts repo-scoped tokens are the bit worth caring about, because they keep Git access tied to one repository instead of a loose account-wide key. I like that. Narrow the boundary, test...

29 May 2026
Cloudflare Radar MRT Explorer in the browser

Cloudflare Radar MRT Explorer keeps the awkward part local, which is usually where it belongs. I prefer that to uploading a route dump to somebody else’s parser and hoping it comes back in one piece.

29 May 2026
Subscribe to repository lifecycle events in Artifacts

Cloudflare Artifacts event subscriptions give you a clean way to react to repository changes without bolting on another watcher. I like that the split between lifecycle and activity events is blunt,...

28 May 2026
Qwen3.7-Max agent workflows with tool bounds

Qwen3.7-Max agent workflows only behave when the tool chain is fenced in, and I trust boundaries more than clever prompts. Let the model read, decide, and draft, but keep secrets, writes, and...

27 May 2026
Browser performance trade-offs for large SVG maps

SVG map rendering looks clean until the DOM grows teeth. I’ve seen a map that felt fine on desktop turn sticky the moment hover, zoom, and labels all started arguing with each other; the file was...

26 May 2026
Indexing prompt injection in search results

Search results are not neutral once retrieval gets involved. I keep seeing prompt injection treated as an edge case, when a single poisoned page can steer an answer if the stack is lazy about source...

26 May 2026
Why AI-promoted commencement speeches backfire

AI-promoted commencement speeches fail for the same reason most institutional waffle does, they sound prepared for approval, not for people. Graduates can spot that instantly, and once they do, the...

25 May 2026
Global domain takedown order and DNS controls

A global domain takedown order sounds neat on paper, but the web is stitched together by registries, registrars, proxies, and hosts, each with their own limits. I have seen enough of DNS controls to...

25 May 2026
Home Assistant wall controller for local bulb control

Zigbee wall switch controllers are one of the few smart home bits I trust not to annoy me later. Keep the bulbs live, keep the wall position, and let Home Assistant handle the logic; it feels ordinary...