Going it alone

Towards the end of 2020 I started to rebuild my site using the Eleventy static site generator. The new site went live on the 1st January 2021.

My site had been running on Wordpress for years. First on a self-hosted Wordpress installation, later on Wordpress.com. At some point I just got tired of the increasing complexity of Wordpress. It's a great tool, but all I really needed to do was to write some posts and update some pages. I also wanted to be much more free to style my site the way I wanted, without having create or adapt Wordpress themes. In short I wanted to be closer to the metal and didn't need 99% of the features Wordpress offers.

Eleventy seemed like a good choice at the time, and so it proved. I don't in any way regret making the switch. Once I got going in it, I found it relatively easy to deal with and adapt. However, with time I also realised that my JavaScript skills are simply not good enough. I stopped programming for a living over 10 years ago. Even beforehand, I was never really focussed on JavaScript. With time I realised that whilst I could get things done in Eleventy, I struggled to understand what I was doing. There is excellent support out there in terms of blogs and discussions, and I always managed to implement what I wanted, but it often felt more like plug and pray.

I became curious to write my own SSG (static site generator). One which does exactly what I want without the flexibility to support various use cases. I mean, how difficult can it be to process a bunch of markdown files?

After procrastinating between using Python or PHP, I decided on PHP as I at least had some experience of using that. After a couple of weeks of hacking, the job was done. My script came it at under 500 lines of code which I understood (at least at the time of writing them!).

Now I needed to sort out the hosting. With the Eleventy site I used a GitHub Action to publish my site to GitHub Pages. But getting my PHP script to run in GitHub actions seemed a lot of effort. Instead I reverted back to NearlyFreeSpeech.Net and now use that to run the PHP script and host the static files. This involves some GitHub API calls to retrieve the latest updates of the content before processing in order to update the live site. This is a little more involved than with GitHub, but I can probably simplify it in the future.

It also feels good to be hosting my files on a smaller, indepedent host. NearlyFreeSpeech.Net have been around for over 20 years. Clearly they know what they are doing. They are also cheap as chips, hosting my site shouldn't cost me much more than a couple of dollars a month. This doesn't compete with GitHub Pages, which is free. But then, so what? The domain name costs me more than the hosting!

Tagged: