←

Blog

2025-10-26

Live public transport routing

2025-10-26

We've all used a public transit router to find a quick route from A to B, such as Google Maps or CityMapper, but how do they actually work? In this post I will discuss how I tried to build my own public transport routing system for London that supports buses, tubes and trains.

2025-08-12

Game of Life with Braille

2025-08-12

Using braille characters, we can render Conway's Game of Life in the terminal. This post goes through how we can use the 2x4 braille characters to display our map in C++.

2025-07-17

Hiding messages in playing cards

2025-07-17

I was recently thinking about the huge number of ways you can shuffle a deck of 52 cards and wondered if it would be possible to store arbitrary data, which I explore in this blog post.

2025-06-15

Storing images in DNS TXT records

2025-06-15

I was intrigued by the idea of storing images in DNS records, and I wanted to test out how effectively images could be stored in DNS records.

2025-02-28

Docker deployment

2025-02-28

Recently I found myself wanting to deploy a docker-compose file to a server. I wanted to automate this process as much as possible, so I decided to write a shell script to do it.

2025-01-05

Hello

2025-01-05

A quick welcome to this site and a test to see if the blog works.