gpk blog
gpk blog
George Kettleborough
Occasional ramblings about my hobbies and interests, including programming and long-distance walking
Latest Posts
I recently bought a house with an Ideal boiler and a wireless thermostat called a “Halo”. The boiler has a “Halo Smart Interface” fitted into it, which should tell the boiler when to fire. The Halo itself contains the thermostat and...
It’s been about eight years since I started running network services in my home. It all started with Pi-hole, which I ran not on a Raspberry Pi, but an Atom-powered Dell Mini “thin client” I acquired from eBay. Today I run a lot more and...
Currently, “AI agents” like Claude Code are all the rage for software development. These programs facilitate feeding context into LLMs directly from your codebase and environment by empowering the LLM to read/write files and run...
The SQL standard includes a boolean type which, unsurprisingly, represents a Boolean value. This can be useful, but I’m going to argue that it should almost never be used in a normalised data model. The Problems with Boolean Here are few...
If you are thinking about using an LLM to communicate with me, you will be glad to hear I’ve just developed an exciting new technique which will save us both time. Rarely are such wins possible, so this is surely cause for a celebration....
Metabase is a really nice free software business intelligence tool. It’s quite easy to deploy; they provide a Docker image and all you really need for a production instance is your own database. I use Flux to manage my cluster so I...
One of the most tried and tested techniques in programming is to build components that map closely to the real-world problems you are trying to solve. In domain-driven design (DDD), one of the key tenets is to have a domain model at the...
Talos Linux is a minimal Linux distribution designed purely for running Kubernetes nodes. It’s pretty neat, check out its website here: https://www.talos.dev/ I use XCP-ng in my homelab for running virtual machines and decided to set up...
In a previous article I wrote about adding maps to my blog, which is a static site. I use these maps to write about walks I’ve done. These maps can be dragged, rotated and zoomed, but there is no backend tileserver supporting it, it all...
The West Highland Way is a waymarked, long-distance path in Scotland. It starts just north of Glasgow and ends at Fort William in the Highlands. It is probably the most famous of Scotland’s Great Trails (similar to the National Trails in...
I’ve been using Kubernetes successfully for a while, but I felt like I still didn’t fully understand the difference between an Ingress and a LoadBalancer. Whenever I tried to find an explanation I’d find some vague thing like “they are...
Habits are really important. Long-term goals are too but, ultimately, habits are what you are doing to yourself day in, day out. Your habits determine what goes into your body (your diet), your physical condition (diet and exercise) and...
I ran into a weird problem where I couldn’t access the OPNsense web UI using an OPT1 interface. The fix is easy, but it can be very confusing and it’s all caused by an unintuitive default. tl;dr If you can’t access the web UI via an OPT1...
The title of this post isn’t supposed to be provocative. After all, it’s simply the textbook definition of what git is. So why bother stating it? Well, I’ve worked with a fair few junior developers now and I’m starting to see a pattern....
The Norfolk Coast Path (NCP) is a waymarked, long-distance footpath and National Trail in England. It stretches from Hunstanton all the way along the Norfolk coastline to Hopton. I walked it with my partner Vicki over the course of seven...