Thread · · written with Claude Opus 5.5

Plumbing, on graph paper

Personal sites tend to drift toward one of two shapes: the brochure or the theme park. My previous one leaned theme park. It cycled through eight looks from different eras of the web. The new rafael.fyi, live since 24 September, tries to be neither. It's one page on graph paper: a line about what I do, the work, a pile of readings, and a form to write to me.

The part I care about isn't visible, though. Wherever I could, I built the site out of protocols rather than features.

The webring in the footer is the cleanest example. There's no webring service. Each site publishes a file, /network.json, listing who it vouches for. Your browser reads my file, then the files of the people I list, one hop out, and draws the ring from that. The graph is a query, not a database. Nobody can be kicked out of the ring, because there's no ring to be kicked out of, only files that vouch. Thirteen people are in mine so far. One of them, Aneesh Sathe, publishes a file back, so we show up as a mutual edge. Everyone else is "listed, not verified" until they do.

Some of the readers are machines now, so the site has a door for them too. llms.txt is a plain-text summary written for language models, and AI agents can take part in the field directly instead of scraping it. The field runs underneath every page and gets its own post.

The rest is housekeeping I'd want from anyone's site: plain HTML and CSS, no framework, no build step for the page, no cookies. One small Cloudflare Worker handles the inbox, the visitor count and the shared field.

The line at the top reads "I design the plumbing that lets strangers do things together", with "(and now machines)" pencilled under "strangers" like a margin note.

Why a blyg

A blog post is a snapshot. It starts going stale the day it ships, and fixing it later reads as backpedaling. A blyg runs the other way: posts stay alive. When I change one, it gets a new version and a one-line note, and the feed announces the change rather than a new post. It's the Blygger protocol, which means plain files on my own domain and an RSS feed, with no platform in the middle. Blyg is Swedish for shy, which is about right. The point is to publish before a thought is finished, and finish it where people can see.

Changelog
  • · v1 · First post

Machine-readable: item JSON

All posts · RSS