Gopher Rodeo

Blog

21 Apr 2025

I thought I might make a short blog post outlining both how I made this website and also talking about my week. Both are cases of me "tending to my garden", metaphorically mostly, but actually literally over the Easter bank holiday weekend as I helped my partner get the garden in shape and take the first steps towards what I'm sure will be an abundent tomato harvest.

In the spirit of tending to my garden (metaphorically) I've been trying to move more and get into better habits. I needn't really have put much energy towards trying to form better fitness habits - it turns out gardening is (literally) great exercise. The new Bon Iver album arrived via my post box on Wednesday and I've been very much enjoying "SABLE, fABLE" - as much as it feels like a "goodbye" from one of my favourite artists. A lot of the lyrics are resonating with me, but the one that is hitting me the hardest right now is "that January ain’t the whole world". I'm holding that with me.

I did promise to reveal a little about how I made this website so now I will share. As I have mentioned previously, I am using Zola as a static site generator. The theme is very loosely based on the "Coder" Hugo theme but I've made a LOT of changes to fit my needs. The markdown and configuration is held in a GitHub repository that is hooked up to Cloudflare Pages, so that the site is built whenever I push via Git. It's a nice, clean workflow!

I've tried to make the whole website without any Javascript, both because I don't like writing it and also because I think there's enough features in HTML and CSS that I don't really need it. The mobile navigation "burger menu" uses a cool technique with a toggle and some nice CSS to get it to display as a menu. The only issue with it's current iteration is the icon is made with just unicode characters that kind of look like burger menu icons, I'd like to change those to SVGs at some point.

I really wanted to make sure that any code snippets (such as the one on the Lisdex page) would look nice, without using any Javascript. Luckily a little while ago I found a blog post that discussed using a font file with built-in syntax highlighting. That fit the bill perfectly, and with some help from my (web developer) partner I was able to get the code snippets to scroll on mobile. I had similar issues with tables not scrolling on mobile that I was able to resolve with the same overflow: scroll; statement.

I'm still learning everything that is possible with Zola and one frustration I had was that I couldn't seem to figure out how to print the current year to the page. I settled on setting the year as a variable in a config file that could be read in. Yuck! Just today I was browsing around the Zola documentation when I found a link to the templating engine they were using, Tera, and there I found a snippet to do exactly what I wanted. I realise I would still need to update my website in Zola to keep the year current but ideally I would be updating the website regularly, having this would just be one less thing to remember.

I've also created a new favicon, but I'm quite bad at anything artistic so I had to find some images of cowboy hats and gophers and trace them onto a piece of paper that I then scanned in. I'd like to say it's deliberately bad, rather than just bad.

I don't really have a sign off from this post so for now I will repeat: tend to your garden.


02 Apr 2025

Welcome to Gopher Rodeo! This is my website and blog. I should probably introduce myself somewhat. I'm Dan, I'm a nerd from London and I've been working in IT for over 16 years. I've been a tinkerer for much longer than that. I'm neurodivergent and over the years I have had a huge amount of projects I have picked up and then dropped. I am trying not to beat myself up about that!

Most recently I have bought a domain for myself and finally decided to actually create a website and blog. Rather than make things easy for myself and use a content management system or something user-friendly to create my website I wanted to investigate static site generators. I think they're a really interesting technology and wanted an excuse to investigate them.

I initially wanted to use Hugo, but I just found it too restrictive. It seemed to be very geared towards blogs and not much else. After that I settled on using Zola. I did use a Hugo theme called Coder for the basis of the theme I created. With Zola I had to create the theme from scratch but luckily my amazing partner has a Masters in website design so was able to give me lots of help in that area.

So far my experience has been pretty good, I'm still learning everything that's possible with the templates but at least for now this seems to work pretty well!


05 Aug 2024

About

The following are a collection of colour palettes intended to be used by developers to help them choose theme colours that are distinguishable for colour blind users. Generally they will also make themes easier to read for all users. Please note that even though these palettes have been specifically designed for excellent legibility the designer still needs to check the contrast ratios between colours and use tools to check themes for suitability with different sorts of colour blindness. The best suggestion would be to check how the theme looks in greyscale, and ensure that no data is lost when doing that.

General Tools

I have created a tool called the Fabio Crameri Palette Generator. It comes with a bunch of different palettes for different uses and is now my go-to when trying to find CVD-friendly colour combinations.

There is also this Viridis Color Palette Generator. The palettes here are only for categorical charts, so bear that in mind.

I previously included tables with various colour palettes but actually - just use one of the Fabio Crameri or Viridis ones! Just make sure to check the contrast in grayscale and a tool such as this one.