It took me a while, but this site is back online, and looking pretty OK again.
After more than five years with the old design, I was tired of the previous look and I was fighting too much with the current CMS, so it was time for a refresh.
For reference, here’s the old home page:
And the new:
The new color scheme came together for me when I found this promotional image from Chrono Trigger—probably my all-time favorite video game—floating around the web:
You can probably spot the source of the red, blue, and gold splashed around here now.
I’ve changed typefaces to Concourse and a splash of Triplicate, both by Matthew Butterick. Triplicate takes design cues from typewriters, a fitting tribute to the eight years I spent at IBM. Meanwhile, Concourse is a dang nice geometric sans: flexible, legible, with a full rangeof weights, true italics, some fetching small caps, and enough personality to be interesting but not overwhelming.
Vastly improved performance
Since I was rebuilding everything from scratch anyway, I worked hard on improving my site’s loading times.
Styles are also way down, from about 10kb gzipped to under 4kb, depending on the page; I inline all the styles any individual page will need, so there’s no blocking request holding up the works.
I also jump through every possible hoop to load and swap in custom fonts in a sane and performant manner.
The same test with mobile CPU throttling and a 3G network still scored a 95.
The previous codebase scored 0. That isn’t a joke. 😢
I haven’t dug into service workers, and I’m doing nothing intelligent with images, so there’s still work to do. But for a first pass I’m very pleased.
Meet my new Content Management System
So I mentioned above that I’m now serving pre-built HTML files. I pulled all my data out of my ExpressionEngine database and I’m now generating my entire site with a static site generator of (oh god no) my own creation.
It’s wildly impractical and will probably only ever work just for me. I call it “Homer”.
I can’t recommend that others do this. I mostly wanted to not maintain a database, write content in Markdown, and spit out boring HTML files that I could dump on any stupid server anywhere. That’s table stakes for a static generator.
On the one hand, sometimes it’s nice to muck around with a bunch of tools. And Homer does do precisely what I want it to do. It’s also very fast: it generates the entire ~600 page site and all the supporting bits in about 10 seconds from a cold start, and while developing reloads are basically instantaneous.
On the other hand, existing and proven solutions like Jekyll or Metalsmith do like 95% of what I would want them to do, they already existed, and someone else maintains them, which is super nice.
Who knows if I’ll stick with this monstrosity, but if you’re looking for a static site generator that…
reads site structure, content, and metadata from a folder of Markdown files;
generates HTML files and RSS and JSON feeds;
adds metadata like “Previous post”/“Next post” to those files, but, err, only if they’re in the /blog content directory right now;