Site logo

It's alive - again!

My on-again, off-again relationship with having my own website is, at least for the time being, officially on again. I’ve moved my domain name to a cheaper name service, migrated the site itself from Jekyll to Hugo, and am hosting the website itself to Vercel on their free “Hobby” tier.

Why have I done these things?

Well, there’s nothing wrong with Jekyll per se, but being implemented in Ruby with plugins as Gems means it doesn’t always play nicely with Linux package managers: installing everything you need and keeping it up-to-date can be a pain; I don’t really want to have to deal with things like Gemfiles in the root of the repository; and good luck if you want continuous deployment but the build environment on your host of choice differs from what you have locally. It’s not quite as bad as Python, but it’s not far off. Hugo is implemented in Go, and has built-in support for all the functionality I need: installing it locally was as simple as dnf install hugo, everything builds into a public/ subfolder for static deployment, or you can use continuous deployment with any provider that has the same version of Hugo available (or newer).

Vercel allows me to set up a “project” linked directly to a GitHub repository, supports custom domains & SSL (with non-broken Let’s Encrypt support, which is more than I can say for my previous hosting provider), and has a free hosting tier which I’m unlikely to exceed the usage limits on any time soon, if ever. So I can just make changes, push them, then wait a few minutes whilst they run Hugo on their end and deploy the changes automatically.

Magic!