Blog Posts

I try to post new content every week. The search bar above can help you find what you're looking for. The posts are also tagged to help find related content.
Go Series: Functions and their Parameters / Return Values
Go Series: Functions and their Parameters / Return Values

This is the fifth post in the Go series. You can see a list of all of the posts in this series by visiting the Go Series tag. This week we look at functions in Go.

Functions are fundamental building blocks in Go, allowing developers to encapsulate code for reuse and clarity. They enable the …

Everything you need to know about how LLMs like ChatGPT work
Everything you need to know about how LLMs like ChatGPT work

Large Language Models (LLMs) are the most talked about technology of the past 2 or so years, particularly OpenAI’s ChatGPT which seems to get a new version come out every few months. But can you say you know how this technology works or where its limitations lie? Today we take a deep-dive on …

Go Series: Conditional Statements and Loops
Go Series: Conditional Statements and Loops

This is the fourth post in the Go series. You can see a list of all of the posts in this series by visiting the Go Series tag. This week we look at conditional statements and loops in Go. These allow us to change the flow of the process according to data we encounter at run time and to iterate over …

Maximise your text manipulation skills with regular expressions
Maximise your text manipulation skills with regular expressions

Regular expressions are fundamentally very simple to understand, but they appear complex and people get quickly put off by this. This is a real shame though because while they look complex, they follow very simple rules and there really are no other tools better than them for the core purpose of …

Go Series: Aggregate Data Types
Go Series: Aggregate Data Types

This is the third post in the Go series. You can see a list of all of the posts in this series by visiting the Go Series tag. This week we look at aggregate data types which are how you can store lots of related data together, much like how directories work on your computer.

In other languages you …

Improvements to my "Internet of Things" mouse trap
Improvements to my "Internet of Things" mouse trap

This is a follow-up for my personal project on the humane mouse trap that notifies my phone via Home Assistant when the trap door is triggered.

I had feedback from fellow IoT enthusiasts that I could improve my design and I wanted to tidy up the circuitry a little. It looking a bit temporary with so …

Go Series: Simple Data Types
Go Series: Simple Data Types

This is the second post in the Go series. You can see a list of all of the posts in this series by visiting the Go Series tag. This week we look at simple data types and how Go handles variable assignments.

Go is a strongly typed language. What this means is that variables you set have to have a …

Go Series: Introduction to Go
Go Series: Introduction to Go

This post is the first in a series of posts I will be making about the programming language Go. You can see a list of all of the posts in this series by visiting the Go Series tag. I’ve been meaning to learn a new language for a while and I wanted to share what I’m learning with others. …

Making a smart "Internet of Things" mouse trap
Making a smart "Internet of Things" mouse trap

Owning cats comes with its perks, but sometimes they bring home rodents and sometimes they let them go in your house! We bought humane mouse traps to try to catch the mice that were left roaming the house. These are actually surprisingly nice build quality, but they come with one big downside. If …

Tricks I use in Visual Studio Code to work more efficiently
Tricks I use in Visual Studio Code to work more efficiently

Visual Studio Code is an incredibly competent development tool from Microsoft and amazingly it’s free. I use it every day in my professional career and, through years of use, I’ve become very familiar with how it works. When you gain this sort of familiarity with a piece of software, you …

How to use GitHub Copilot Free in Visual Studio Code
How to use GitHub Copilot Free in Visual Studio Code

Microsoft announced on 18th December 2024 that they were introducing a free tier for GitHub Copilot. So what does this mean, how do you set it up and how can you use it? This post focusses specifically on the integration with Visual Studio Code, but you can use GitHub Copilot with any supported IDE. …

I play Advent of Code, and you should too!
I play Advent of Code, and you should too!

One of the hardest parts of learning a language’s fundamentals is having enough meaningful problems to solve. “Hello World!” is all well and good, but when do you ever have to use that code in an application you’re building? That’s where Advent of Code comes in for me. …