Writing
These are the notes I keep while doing the work: migrations off page builders, editorial CMS rebuilds, the technical-SEO fixes that actually move rankings, and plain-language explainers for the parts of WordPress that trip people up. Some posts are written for developers; others are for the person who just inherited a site they did not build. I write them the way I would explain a problem to a neighbour who asked, without jargon for its own sake and without pretending a hard thing is easy. If something here helps you fix your own site, that is the point.
-

Why mentoring is a pillar of my practice, not a maybe
I grew up in a forgotten industry town, and I keep meeting that town everywhere. It’s why every engagement I take includes…
-

Behind the Scenes: the contact form that mistook my customers for bots
My contact form honeypot mistook autofilled humans for bots and binned their messages. A week of that, nine pull requests, and eleven…
-

Page dilution and keyword cannibalization: why fewer WordPress pages often rank better
Two of your pages compete for the same search, and both lose. Here is how to spot page dilution on your WordPress…
-

A free, typography-first WordPress theme: meet Quillwork
Quillwork is a free, full-site-editing WordPress theme built for writers and editors, designed around the reading experience first. Install it from your…
-

Behind the Scenes: the nightly bot that kept un-fixing its own fix
My nightly autonomous WordPress agent spent a week un-fixing its own fix. What that bug, a made-up auction price, and nine deleted…
-

Why WordPress page builders are laying people off, and what the AI headline is hiding
The press releases say AI moved too fast to plan for. The WordPress roadmap that took the page builders’ best feature tells…
-

Behind the scenes: the WooCommerce bug that hid from its own test
The week I almost shipped a WooCommerce fix that would have quietly undone itself, landed two open-source merges, and audited my whole…
-

WordPress application passwords
I was partway through migrating a LearnDash course site when I lost access to the dev environment. An Application Password I had…
-

Migrating off CivicPlus: the hidden records-management cost procurement misses
Municipal procurement teams routinely miss the records-management line item when scoping a CivicPlus exit. Here is what it covers and what it…
Working on a WordPress challenge? Get in touch