Skip to content
Be Useful.

Tags

Categories say where a post lives; tags say what it is about, so a post can carry up to three. A tag appears here once 2 posts share it.

Accessibility3 posts

Contrast, reduced motion, screen readers, and making the site work for every reader (even when the scripts are switched off).

AI-assisted6 posts

Building, drafting and debugging with AI as a collaborator. A bicycle for the mind, but with wings.

Blogging3 posts

The blog itself: what shipped, what was learned in the process, and what's next.

Content modelling3 posts

Snapping together modular content, and the process of adding or pruning components in the CMS.

Contentful2 posts

The headless content management system this site is running on: implementation, integrations, and best practice.

Design2 posts

Colour, type and layout decisions, and the tokens that hold them together.

Film2 posts

Watching classic films and offering a close reading, sometimes two at a time.

Hardware3 posts

A cluttered workshop of soldering irons and single-board computers, and other things with a power switch.

Information architecture3 posts

How the site is organised and navigated, including pagination, breadcrumbs, search, and surfacing stories naturally.

Machine-readable2 posts

Feeds, sitemaps, structured data, llms.txt: building a site that's visible to human and non-human alike.

Retro gaming4 posts

Old video games and the machines that still run them, from big box PC classics to emulation on a Raspberry Pi.

Templates3 posts

Starting out from someone else's code, a.k.a. standing on the shoulders of giants.