#tooling
9 entries
projects · May 2026
Patinate
Render Strava activity into stylized heatmap posters and inline SVG. A single Rust binary keeps a SQLite activity cache, draws it over an OpenStreetMap basemap in one of four baked-in themes, trims every track inside a privacy circle before render, and can strip identifying attributes on the way out. The patina builds where you ride often: overlapping low-alpha strokes accumulate into brighter color the way actual patina builds on metal.

projects · April 2026
kit
A tool-registry manager that resolved developer tool versions across git-based TOML registries, generated mise configuration from the result, and verified every install against a per-tool trust tier, from cosign down to a bare checksum. Three CI pipelines proposed and gated the bumps until mise covered the same ground.

writing · March 2026
Get Lamp
On dark software factories, where they work, where they might not, and a tool we built to explore the gap.

writing · March 2026
Go Architecture for LLM-Maintained Codebases
Structural choices in a Go project built mostly by LLMs: making wrong code fail to compile rather than fail code review.

writing · March 2026
Back to Composable
On why the agent tooling ecosystem is rediscovering the Unix shell, and why MCP is starting to look like Maven.

projects · February 2026
Pinboard
Ken Burns-style video generator that composites photos as vintage Polaroid snapshots on panoramic backgrounds, with smooth camera movement and music.

projects · February 2026
Playbill
TOML-driven video program assembler: title cards, intros, episode pass-throughs, and credits rendered into a single concatenated video with fade-to-black transitions.

life · February 2026
Birthday at the Theater
Alasdair turned three and we threw him a party at the theater, which required splicing together TV episodes, phone-recorded introductions, and Ken Burns effects on Route 66 maps.

projects · February 2026
Harness Explorer
Static analysis for the AGENTS.md, CLAUDE.md, and skills files that define how an agent behaves in a codebase. A single Go binary follows their references into a knowledge graph, scores it for redundancy, contradiction, and information density, and ranks where the next hour of harness editing saves the most tokens; whether that ranking approximates what matters is untested, since no calibration dataset exists.