Building this blog the way I'd build a marketing system

1 min read

I host my own site on a small box in Falkenstein. Adding a blog to it was a chance to apply the same rule I use for marketing systems: decide the constraints first, then let them do the deciding.

The constraints came first

Three rules, set before a line of code:

  • Ship zero JavaScript to the reader by default.
  • Keep the page fast enough to score above 90 on Lighthouse.
  • Let the writing be the thing. No popups, no chrome, no theater.

Everything else followed from those.

Constraints first, then taste.

What earned its place

Reading time, a table of contents, and related posts - all computed at build time, none of them shipping a byte of script. Code blocks are highlighted during the build. Share images are generated once per post and never touched again.

What did not

Drop caps. A progress bar. A comments section. Each one is a small delight that costs the reader speed or attention, and a clarity-first blog cannot afford either.

That is the whole philosophy. Constraints first, then taste.

The box runs in Falkenstein.1

Footnotes

  1. Hetzner FSN1. One small server, several sites, very little fuss.