SINCE 2020
Open Source engineer, writer, operator.
Building open infrastructure in Canada. Writing about digital sovereignty, the systems we live in, and the reasons to continue building.
FEATURED
RECENT WRITING
-
POST I Don't Let My Agents Commit I have to understand my codebase, own it, and keep a hand on its design without drowning in what agents produce. So nothing lands until I've read it and run the commit myself.
-
PHILOSOPHY My Take on Levinas Keeping Levinas's diagnosis of totality and the face, and grounding the obligation in people instead of in God.
-
POST us-east-1: The Bane of Sovereignty A backup client's hardcoded us-east-1 locked out our Canadian storage. S3-compatible tools should let users set the signing region.
-
POST Pingora Is My New Best Friend Pingora is Cloudflare's Rust framework for building proxies, and it's a framework, not a library: it runs the proxy and calls your code at fixed points. Here's how to build a pass-through proxy in about thirty lines, then teach it to hold and deny a request.
-
POST A Harness of My Own Alberta published 21 white papers on turning an AI agent workforce loose on a 40-year, 466-million-line technical estate. Reading the first two, I found the architecture behind a framework I'd already built.
-
POST Building RAG Search for My Docs, Powered by Cohere Semantic search for the Storm Developments guide: Cohere Embed and Rerank over pgvector, the bugs I hit building it, and the cost controls that came out of them.
-
POST Storm Pulse: Integrations Storm Pulse manages my S3 nodes and its kernel contains zero S3 knowledge. How a one-person infrastructure company keeps its most privileged code small enough to actually audit.
-
POST Grill and Drill with Skill A skill you install without reading is shaping how you think, authored by someone else. I took Matt Pocock's grill-me, bent it to fit my head, and then built the inverse skill - drill - that the original never reached. The case against copy-paste, one layer up.
-
POST Contributing to Garage: Two Pull Requests, Two Ways In I bet my platform on Garage, the open-source S3 engine. So I started fixing it. Two merged pull requests - a one-line CORS fix I needed, and a bulk-delete compatibility fix I went looking for - and what they taught me about owning your tools.
-
POST Quebec Got Privacy Right - Why Law 25 Is My Gold Standard Quebec's Law 25 is the strictest privacy law in Canada, and the standard I hold Storm Buckets to even though PIPEDA is the one I'm held to. Confidentiality by default, readable consent, and the right to walk away with your data.
-
PHILOSOPHY My Take on Simone Weil Keeping the moral core of Simone Weil - attention, gravity, the face - and leaving the mysticism out of it.
-
POST Why I'm building a Canadian S3 alternative (The 85% problem) Three American firms hold 85% of Canada's public cloud. Storm Buckets is my open, Canadian-hosted, S3-compatible alternative for object storage. -
POST Building a Static Site Generator in Rust Why I rebuilt my personal site as a static site generator in Rust - the Spellbook lineage from Django, compile-time templates with Askama, and hosting the whole thing on my own Storm Buckets.
-
POST Lessons from 15 Hours of Downtime Both my providers went down simultaneously because they shared a datacenter one layer below the surface. Layered coupling is the hardest kind to see.
-
POST How Docker Got Me Off DigitalOcean's App Platform I leaned hard on DigitalOcean's App Platform until the bill mattered. Learning Docker cut my costs and forced me to learn the rest of the stack. Six years later it runs everything I build.
-
POST Why I Chose Garage for Canadian S3 Storage Garage is the open-source S3 engine I picked for storage on Canadian hardware. Here's a single-node setup behind Caddy, with Obsidian sync as the test client.
-
POST Micro: The Terminal Editor Between Nano and Vim Why I switched from nano and vim to Micro for editing config files on VPSes. A terminal text editor with sane keybindings, syntax highlighting, and zero learning curve.
-
POST Why My Most Important Code Lives on Forgejo My company's code lives on a Forgejo forge I run on Canadian hardware, not on GitHub. Here's the setup and the branding behind Storm Forge.



