Andrew Fribush

Colophon

In July 2026 I decided this site looked generic and set out to fix it. I sampled eleven of the best personal engineering sites I could find — Paul Graham, Dan Abramov, Julia Evans, Simon Willison, Bartosz Ciechanowski, and friends — looking for what to steal. What they have in common: a white page, dark ink, one accent color, a serif for reading, and almost nothing else. The average of the best sites on the internet is a plain page.

So that's the design: the statistical mean of the genre, adopted on purpose. In this genre, plain is what credibility looks like. Anything distinctive here should be something I built, not something I decorated.

The machinery

The plainness is load-bearing. Underneath it:

fig. 1.2.1 · the figure system, drawn by itself.
NUMBER · CAPTIONLEDGERRESOLVEADDRESSABLEREGISTRY.TSTHE LEDGERFIGUREFRAME/FIGURES/FIG/‹N›ESSAYSCITATIONS
fig. 1.2.2 · the ledger, counted by area.
08.2516.524.75330123figures in the ledgerAREA (0 LABORATORY · 1 PAGES · 2 ESSAYS · 3 PROJECTS)FIGURES

Use the left and right arrow keys to read points. Escape clears the selection.

View chart data

source: src/app/figures/registry.ts

fig. 1.2.3 · the build, weighed route by route.
/fig/[num]/embed946 KiB/fig/[num]946 KiB/lib-lab878 KiB/desk610 KiB/451 KiB/blog/[slug]442 KiB/feed.xml/route441 KiB/blog/layout441 KiB/blog441 KiB/layout440 KiB/code-bits/big-o440 KiB…ts/algorithm-visualizer434 KiB/code-bits/colors434 KiB/code-bits/git-graph434 KiBRAW CLIENT JS · BUILD OF 2026-08-05 · ORANGE = OVER 800 KIB

source: .next/app-build-manifest.json · scripts/build-fig-weight.mjs

  • ⌘KA command palette. It searches every page, project, and code bit on the site.
  • ?The keyboard cheat sheet. g then a letter jumps between pages, like it should.
  • xX-ray mode. It outlines the architecture of whatever page you’re on and tells you how it was rendered.
  • >A working terminal at /cli, with a virtual filesystem generated from the same registries that render these pages. Pipes work. wren "what should I read?" also works.
  • wrenThe small bird at /desk (and the quiet orb in the corner of most pages). It can search the project catalog, open pages, and draft an introduction email. It is instructed not to oversell me, with mixed results.
  • ▲The Ziggurat, a first-person pixel-art world at /studio, software-rendered in one dependency-free HTML file. It has no business being on a professional site, which is why it's here.
  • 404The error page is worth mistyping a URL for.

The shop

This site is built by my agents, under my direction, and I want that to be legible rather than laundered — running an AI practice is what I do, and this site is that practice working in public.

The shop runs the way I run production AI work: agents implement from written task handoffs; machine-enforced gates check every change (the figure ledger, the reference archive, the document registry, and the route-coverage check below all reject known-bad cases with negative tests); substantive changes require a written decision record; and substantive work is reviewed adversarially by a different model than the one that wrote it. I set direction, judge the output, and merge.

Every document in the ledger carries a provenance label: andrew means the substance is mine — my record, my decisions, my words; shop means my agents drafted or built it under my direction. Nothing pretends to be handwritten that isn't.

The ledger

Every page here belongs to a numbered document, the same area.document grammar the figures extend — and a gate refuses any route that serves unregistered. The whole site, as its table of contents, with each document's tier and provenance:

area 0 · laboratory

area 1 · pages

area 2 · essays

The stack

Next.js on Vercel, statically rendered almost everywhere. Type is Source Serif 4 for prose, Geist Sans for interface, Geist Mono for code. Analytics are first-party and private: a small beacon counts page views and daily uniques on my own server via a salted hash that rotates daily — raw IPs are never stored, there are no cookies and no third-party trackers, and nothing about you leaves this domain. The mailing list is double-opt-in and one-click out.

There are at least three things this page isn't telling you.