How I built this site — and why it still took 27 years
The site you’re reading was built in a weekend. Two days, start to finish, from blank directory to live pages. The tools made that possible: Claude wrote most of the code, I made most of the decisions, and we argued about the rest. Every heading, every margin, every word on every page went through that loop. Machine speed, human judgment.
But saying “I built it in a weekend” obscures something important. The weekend was the typing. The 27 years before it were the thinking.
“The tools don’t replace the judgment. They compress the distance between knowing what you want and having it exist in the world.”
Every decision I made during those two days, the typeface pairings, the information architecture, the way the sidebar navigation works, the tone of the copy, those weren’t weekend decisions. They were the accumulated residue of almost three decades of doing this work. The AI accelerated the execution. It didn’t accelerate the taste.
What 27 years of decisions look like
Consider the typography. EB Garamond for headlines, Literata for body text, JetBrains Mono for data and labels. That’s not a random stack. Garamond gives the headlines weight and history without feeling corporate. Literata was designed specifically for long-form reading on screens, not adapted from a print face. And JetBrains Mono provides the technical contrast that makes data feel credible rather than decorative.
I didn’t learn that in a weekend. I learned it over years of setting type that didn’t work, studying type that did, and slowly developing an opinion about why.
The same applies to the layout. A fixed sidebar with the navigation visible at all times. No hamburger menu on desktop, no hidden navigation, no clever scroll-triggered reveals. The sidebar is always there because navigation should be always available. That’s not a design trend I’m following. It’s a conviction I developed after watching hundreds of usability tests where people couldn’t find the menu.
What the build actually produced
Two days. No framework, no build step, no dependencies. Just HTML, CSS, and vanilla JavaScript. Here’s what shipped:
No React, no Next.js, no Tailwind, no npm. Every page is a standalone HTML file that loads in under a second on a 3G connection. The CSS is one file. The JavaScript is two small scripts for navigation behavior. That’s it.
docs/site/
index.html # Home
style.css # One stylesheet
nav.js # Scroll-reveal + scroll-spy
sidebar.js # Sidebar navigation
articles/ # You are here
This isn’t minimalism for its own sake. It’s the result of watching enough projects collapse under the weight of their own tooling to know that the simplest thing that works is usually the thing that keeps working.
The actual point
There’s a version of this story where I tell you that AI is going to replace designers and you should be worried. That’s not the version I believe. The version I believe is simpler and, I think, more honest.
AI makes execution cheap. That means the only remaining competitive advantage is judgment: knowing what to build, knowing what not to build, knowing when the thing you’re looking at is good enough and when it’s not there yet. Those are human skills. They take human time to develop. No shortcut, no weekend hack, no prompt engineering gets you there.
“AI makes execution cheap. The only remaining advantage is knowing what’s worth executing.”
I built this site in a weekend because I already knew what a good site looks like, sounds like, and feels like. The AI was the hands. I was the brain. And that division of labor, that’s the future of this work. Not replacement. Compression. Twenty-seven years of learning, compressed into two days of doing.
If you’re wondering whether your site is saying the right things, or anything at all, that’s a question I can help with. Let’s talk about it →