kamal-backup 1.0: A Backup Is Only Real After You Restore It
kamal-backup 1.0 brings exact Rails restores, restore drills, and PostgreSQL, MySQL, MariaDB, SQLite, SFTP, and rclone support to Kamal.
Sprytna League
A season-long fantasy prediction game where you guess your teams final score each week instead of drafting or setting lineups.
Mixing up analysis of Project Architecture (Famix) and its history (Mining Software Repository)
Famix is the meta-model family of Moose allowing one to analyse the dependencies of a project and its global architecture. But sometimes, you want more, you want to see what are the part of the code…
Thinking About Professional Local Government Management Education, Part I
In July of 2025, I took over as (or became the first, depending on the accounting) MPA director at NIU. My role is to run the academic side of the house; my department chair runs the university side.…
Don't Let LLMs Play Telephone With Your Ideas
A prompt is for communicating an idea to an LLM. If you tell your idea to an AI agent and ask it to write down in its own words, say, a “skill” document which is meant to be a reusable…
The Grokathon: tidying code, together
In my previous post I argued that the human code review has become the bottleneck in our software delivery process, and that most of what a review used to buy us no longer fits in a diff. But if we…
I used to hate Tailwind CSS. Here’s what changed my mind
I spent years arguing against utility classes. Here is what made me change my mind about Tailwind CSS — and where I still think it hurts.
The executive loop
The simple loop executives use
Modern Web Guidance as a starting point for my own token skills: getting agents to write better CSS
Modern Web Guidance is a set of skills from the Chrome and Edge teams that feeds expert-written platform guidance straight into your coding agent, with Baseline compatibility data baked in. It's…
Hooks as a Poor Man's CI
A `pre-receive` hook that checks out the incoming tree, runs a real check against it, and rejects the push at the transport layer if it fails, before a single ref is updated.
Book report: The Invisible Hook
Peter T. Leeson, The Invisible Hook: The Hidden Economics of Pirates (Princeton University Press, 2009). In my ongoing attempt to “try on” views of the world, philosphies, or mental…
Cat Bells
A visit to the Lake District would not be complete without at least one walk to the top of a big hill. What with spouse and I not being regular users of shanks pony least of all up mountains I asked…
One Page Earned 102,657 Image Impressions and 2 Clicks. I Shipped 8 Free Tools That Find Pages Like It.
Image search on one client site ran at 64% of web's impressions and 11% of its clicks, and no tool in the stack could see it. The new GSC MCP update ships 8 free image SEO tools that read that…
Manifest
lost, what you never owned. still claiming for it blamed, what you couldn't control. still believing it did saw, what you wanted to see. kept looking for it found, what you feared the most. kept…
a fake resume invoked China's defence-tech elite, then installed VShell
Disclosure: this research was conducted using an ANY.RUN account provided as part of a collaboration. All analysis and conclusions are my own. I did not execute the malware locally. Local work was…
The node is holding auditions
The workspace — it’s called Metis now — needs a teacher: the big always-on model that plans and reviews for the smaller ones. I’m not picking it by vibes. Five big open models, one…
Operation Economic Outcast: Bessent's D-Day and the Race to Build New Dollar Infrastructure
Mine Print Hash 2026-35
Using Scoped Coverage to Prune an AI-Generated Go Test Suite
Tobari gives my AI coding agents deterministic evidence for finding and consolidating overlapping Go tests.
How We Used AI to Make happycontext Up to 77× Faster Without Breaking Its API
How we used AI, profiling, adversarial tests, and repeatable Go benchmarks to cut hot-path work and make filtered log writes up to 77x faster.
What is a Megawatt Worth
A practical look at what a megawatt of power is worth and the factors that shape its value.
Talk is Cheap. Code is Cheap. Show me the Source
https://blainsmith.com/essays/humanities-in-the-machine/ I've been meaning to write about this since [2026-03-20 Fri]. finally doing it. Quick note on the title before I get into it. It's riffing on…
Growth at all costs is cancer
“Growth for the sake of growth is the ideology of the cancer cell” Edward Abbey The modern world is built on a system in which we must “progress” in order to survive. The issue is that we never ask…
Vitamins - Stat Gain for Into the Oddish
It whispers to me like the Green Goblin mask. It says... "Pikachu... Pika pika." Which I think translates to either "Drink from me, Gadda" or "oh god i'm a disembodied head" Farmhands pledging $1 or…
Reading notes on Naming Things by Tom Benner
Naming Things by Tom Benner a tiny but neat book about the naming of identifies in code (variables, classes, methods, so not packages or libraries). It had entered my to-read list a few years ago,…
Jugulans is now developed on Chicken Scheme 6
Jugulans is now developed on Chicken Scheme 6 After upgrading from Chicken Scheme 5 to Chicken Scheme 6 I am now developing jugulans on Chicken Scheme 6. This required only a minor change. jugulans…
Steal These Status Lines
The Claude Code and Cursor CLI status lines we actually run, on macOS and Linux, with the GNU vs BSD adaptations and copy-paste scripts plus the statusLine config blocks.
Opus 5 Claudish. Here is how to shut it up.
Everyone fed up with Opus 5 Claudish. Here is how to shut it up.
Domain-Driven Agents
LLMs look brilliant in a greenfield repo and mediocre in a legacy one. The difference is the codebase. The fix is to invest in it directly: split strategic from tactical work, keep the strategic…
Learnings from the Codex repo
I’ve been fascinated recently at what the best practices in the new age of engineering look like. But it’s hard to find real data on best practices. For example, X has a ton of…
AI social etiquette
Observations on when its okay and not okay to AI-generate content
The Python Developer Tooling Handbook on The Python Show
Mike Driscoll invited me onto The Python Show to talk about the Python Developer Tooling Handbook. We covered how I got into Python, why I built the handbook, the current type checker race,…
Blogging with (actual) paper
Building an Agent Skill to convert my hand-written drafts to Astro-friendly markdown with Antigravity.
Jargon Is Now Available on the App Store
Jargon is now available for iPhone and iPad on the App Store . Jargon began as my offline reader for the Jargon File, the dictionary of early hacker language and culture. After releasing the Android…
Vector Search Is Still the Memory Layer Agents Actually Need
When I was working on Vector Search with JavaScript, vector search was a hot topic. By the time the ...
Moving to Leaflet
Moving my personal long form writing to the ATmosphere.
RE: Some blogs are ugly, but many need better accessibility
I saw the original post generating a bit of talk, and I haven't written many lighter posts lately, so I figured I'd add what I had to say. First off, OP said: I would never tell anyone to their face…
The Servant’s Rebellion
One of my favourite Persian poems is عصیان بندگی (The Servant’s Rebellion) by Forugh Farrokhzad. Born in Tehran in 1934, Farrokhzad became one of Iran’s defining modernist poets and also a filmmaker…
We’re all just little headache machines and we need to take our daily mandated no-headache liquid…
We’re all just little headache machines and we need to take our daily mandated no-headache liquid and rest and air. 😆Chibird store | Mail club | Instagram
Sir Thomas More’s Soul Journey from Mind to Heart
An Evolutionary Astrology analysis of Sir Thomas More, exploring his transition from radical intellectual logic to the transformative courage of the heart.
Dolly’s Coat of Many Colours and My Party Dress
Sometimes there is a beautiful soul that lights up the world around it - I am sure that most people have heard the news by now of Dolly Parton's passing at the age of 80 - a good age and yet with the…
1P Meets 2P (Ivan)
Here’s my design of 2P Ivan. I wanted to keep his original hair color but lean into the classic red eye color that most 2P characters get and give him even paper skin and heavy eyebags.…
Custom Editors | Unity Shader Code Basics 08
With a custom shader GUI, we can bring together all the features we've built and combine them into a mega PBR shader.
An unofficial guide to markdown-ts-mode on Emacs 31
Intro So, Emacs 31 has been released, and a lot of shiny new stuff is there, ready for us to play with. You probably heard of this new markdown-ts-mode and decided to check it out. And guess what? On…
How I write with POTS
I am following up my last post about how I write with a text about how I specifically get that writing done with Postural Orthostatic Tachycardia Syndrome. 🧂 It cannot be a straightforward answer.…
I’m Building for Shipaton 2026: Four weeks in!
I'm at the four week mark working on Shipaton 2026: My RevenueCat Paywall is hooked up to App Store Connect & tested, operationalising the app is coming along and I have a rough website
Sound On Sound Podcast: Gérard Assayag
Rather late getting this online (blame Taiwan!): podcast interview about Computer Science, AI and IRCAM with Research Director Gérard Assayag.
How to (properly) apply for an apartment viewing
I am subletting my apartment. Based on the dozens of messages I have received, here are some of the mistakes that might hurt your flat search. The mysterious stranger In Berlin, an apartment listing…
comparative
an inkling or two for who? more intimations fewer intimations sustain other things said span Yesterday :: Wednesday, 26th August 2026