About this site
Published: Mar 29, 2022
Updated: Jul 2, 2022
I never had a website back in the 1990s - so I finally gave myself a 1990s-style website. Okay - that was a joke.
I launched this site because I wanted to have a place to share interests and experiences that don’t fit in with my other websites.
Style #
I wanted something spartan, taking inspiration from the blogs of developers who include nothing unnecessary and engineer according to purpose.
(Exception example: the hilarious hamburger menu on Zach Leatherman’s site. But even that cascading menu has a purpose: it suggests a question: “Is a hamburger menu the best choice for every website?” Zach’s navigation solution - simple hyperlinked text - takes one click. )
Speed: the non-negotiable #
This site gets a 100/100 on Google’s Page Speed Insights. That’s thanks to the JAMstack approach, the developer’s set up, and Netlify.
It’s hard to beat .8 seconds to interactive for mobile and .2 seconds to interactive for desktop.
My Spearfish site, another JAMstack site deployed via Netlify, also scores 100/100. I add that fact in case you’re unfamiliar with Netlify or JAMstack and think only sites - or homepages - with no images can be fast.
There are plenty of examples of high-performance JAMstack sites that have lots of ‘bells-and-whistles’ - like Smashing magazine.
Details #
This theme is from software engineer Zachary Betz. I’ve made a few style edits. My goal was to get it up and running and tweak things as I go along. So I’ll be adding tags and categories later, for example.
- I’m using Github and deploy via Netlify.
- Given this is a Hugo site, all content is created in Markdown. That also makes it easy to switch to a new design.
- I’m not using a CMS although it’s easy to append the Netlify CMS if I want to later. (I’ve become accustomed to creating articles in Markdown directly in Github. I’m currently switching to using the Drafts app.)
- I added GoatCounter analytics. There’s no personal tracking and no GDPR needed.
Adding GoatCounter to a Hugo Site #
- If you have a config.toml file, follow the instructions here.
- If instead you have a config.yaml file, look for “params” and add your GoatCounter subdomain:
goat_counter_code: sherrieg
So my params section now looks like this:
params:
show_search: true
show_debug_table: false
goat_counter_code: sherrieg
date_format: Jan 2, 2006
On this site, in the themes directory, under layouts/partials there’s a related script-goatcounter.html file:
{{ if not site.IsServer }}
{{ with site.Params.goat_counter_code }}
<script
data-goatcounter="https://{{ . }}.goatcounter.com/count"
src="//gc.zgo.at/count.js"
async
></script>
{{ end }}
{{ end }}