Things I've built, and how.
Anyone can list projects. These are the build logs: what the thing does, how it's wired, the decisions I'd defend, and the parts that broke in ways I didn't see coming. Every number here comes out of the running system, not a pitch deck.
The write-ups
Three systems, all of them still running right now.
OpenClaw
An AI agent that lives in my iMessage. I text it like a person and it runs jobs on my Mac. 32 skills, two model providers with automatic failover, four scheduled jobs, and one guard that stops it talking to itself forever.
RunRace USA
25,239 races from five booking platforms, deduplicated, rendered into 20,000+ pages at the edge. Includes the ordering bug that quietly deleted most of my sitemap and what Search Console had to say about it.
The All-In portfolio
I tested whether a podcast can pick stocks. It can't, at t = -2.26. The write-up leads with the falsification because that's the part worth reading, then shows what replaced it.
This site
Eight jobs run every night: Garmin miles, sleep, Chess.com, Strava routes, race data, the portfolio. Then it rebuilds and deploys itself. I haven't hand-edited a number on this site in months. Write-up coming.
How I tend to build
Four habits that show up in all of it.
Automate the boring part first
If I'd have to do it twice, it becomes a script. Every chart on this site exists because typing numbers into a page by hand is a job I refuse to keep.
Fail visibly, not silently
The expensive bugs in here were all silent ones: a sitemap that shrank without complaining, a portfolio that looked great because it knew the answer in advance. Now the pipelines say what they skipped.
Write down what would prove me wrong
Before the result arrives, not after. It's the only way I've found to stop myself quietly moving the goalposts when the number disappoints.
Publish the misses
The failed repairs, the negative information ratio, the crash logs. A build log with no failures in it isn't a build log, it's marketing.