Fully Deprecated

June 13, 2026

How I built this site

I wanted this site to stay simple enough that I could still upload it over FTP.

That was the constraint from the beginning. I spend a lot of my work life around cloud-based enterprise systems: AWS, Azure, CI/CD pipelines, managed services, identity layers, observability dashboards, and all the machinery that comes with building software at scale. That stuff is useful. It pays the bills. It is also not what I wanted for this site.

I wanted something that could live on an old-school Apache server. The kind of server that can run PHP and MySQL and has probably been quietly doing its job for years. No containers. No serverless functions. No deploy previews. No elaborate infrastructure. Just files on a server.

At the same time, I did not want to hand-code every repeated bit forever. I wanted posts, project cards, shared styles, metadata, and all the small conveniences that make a site pleasant to maintain. So I talked it through with AI and used it as a sounding board for the constraints.

The direction we landed on was Astro. It gives me components and a modern authoring workflow while still building down to static files. That means I can work locally with a real project structure, SCSS, reusable pieces, and generated pages, then ship the finished output like it is 2004: upload the files and let Apache serve them.

That tradeoff feels right for this place. It is modern enough to be easy to work on, but boring enough to host almost anywhere. The site can still have a little personality, a little structure, and a little automation, without turning into a cloud architecture diagram.

So that is the shape of it: Astro for building, static files for serving, FTP if I want it, and an old Apache/PHP/MySQL box still doing what it has always done.