TL;DR; I migrated to using Hugo for building my static website and I’ve embraced the golang programming language after being a huge fan of Elixir for the past almost 7 years.
I’ve created my own blogging and content management system from scratch at least 4 times. I’ve rebuilt this site at least 10 times in different programming languages in the past 15 years .
The previous version was flashy, cool and built with Elixir and Phoenix, it remained online for 5 years without issues. To attest to the powers of Elixir and Erlang/OTP. However, adding new features to it was always time consuming, as I didn’t want to host just another wordpress bloatware.
I’ve since then migrated to using simpler tools and have recently decided to publish my blog as a simple static site. Even more, the current design looks simple, and boring. Simplifying content creation, long term storage and DevOps, as I only have a simple VPS and a simple bash script which builds the site with hugo, creates an archive, copies it over with scp, and unarchives the site into a folder which is handled by a static webserver.
Believe it or not, I host a plethora of golang based services and applications all on a $5 Linux VIrtual private server from linode . It’s just 1GB RAm. Clicking this link will grant you $100 credits to try out linode . I’ve been a fan of efficiency for years.. but some fanboys arenow just beginning to understand that cloud vendor lock in is hurting the world
No intermediary bullshit build systems like github,gitlab, o complex CI/CD. Why would anyone need that? Just to show off you can use proprietary systems instead of using simple built in tools?! Since I’ve migrated to GOlang I don’t even neet to use docker/containers anymore for any deployment. Just build a static binary, scp it and reload the service with systemd.
That’s it. And If I need anything complex I might use something like terraform, but even then, probably not needed.
All done with simple bash script and basic Linux knowledge.
ONe side effect of using hugo was that I’ve recently migrated to using markdown instead of asciidoctor . Asciidoctor IS supported in hugo, many of my old articles are still in asciidoctor, Yet markdown is simpler and is built in everywhere, plus it has a faster build time. I’ve even migrated [my notes from asciidoctor to markdown in fossil scm.]
Simplify your life.