Preview image for post 'Notakto: A Haskell game with Apecs and Raylib'

Notakto: A Haskell game with Apecs and Raylib

My previous post on Apecs was very well received, but I've seen a lot of people using the now-out-of-date code and somewhat struggling. Time to dive back in!

Read more
Preview image for post 'Laplace's rule of succession'

Laplace's rule of succession

  • July 20, 2022
  • 8 Minutes

I find myself talking to many people about this bit of maths simply because I've actually been able to apply it in my life and work. Hopefully in this post I can explain how!

Read more
Preview image for post 'Website redesign with Bulma CSS'

Website redesign with Bulma CSS

There were a lot of teething issues I had with my website, and so I decided to start from scratch and redesign the appearance of my website using Bulma for common components.

Read more
Preview image for post 'First ever QNA!'

First ever QNA!

I've been corresponding with some of my readers over the past few months, and I've sent so many emails that I might as well make a post about it!

Read more
Preview image for post 'Hex Voronoi'

Hex Voronoi

  • April 19, 2022
  • 12 Minutes

After spending a while wandering the internet in search of something new to learn, I found something I somehow missed: the language, Haxe, and the game framework, Heaps. This was the result of my learning.

Read more
Preview image for post 'New Year, New Website'

New Year, New Website

My website has gone through many iterations but I wanted to truly make it my own and have control of every aspect. My website is just as much for me as it is for the rest of the world and I enjoy tinkering with it now and again.

Read more


Preview image for post 'What is Nix?'

What is Nix?

I seem to be nixifying everything, from my operating system to my website. I wanted to go into a bit of detail about what it's like working with Nix.

Read more
Preview image for post 'My Website:'

My Website:

This website is more than just a landing page for people looking to contact me, it's a trophy cabinet for all of my digital achievements, it's a canvas for thinking out loud and a place for me to tinker.

Read more
Preview image for post 'Now on!'

Now on!

I haven't been blogging much and I thought that it would be good for me to try and take blogging a little more seriously and to try and promote myself so that I'm encouraged to write more content.

Read more
Preview image for post '4 Months At Jagex'

4 Months At Jagex

4 months ago, I accepted a life-changing opportunity to work for Jagex, a studio I've aspired to work for since I played RuneScape when I was younger. I thought I'd update my blog since it has been a while.

Read more
Preview image for post 'Goodbye DSD, Hello Jagex!'

Goodbye DSD, Hello Jagex!

Roughly this time last year, I accepted a job at Deep Silver Dambuster Studios, but unfortunately it wasn't a great fit for me. I'm now pleased to announce that I managed to get a job at Jagex!

Read more


Preview image for post 'HexagonalHS'


I've been playing around with Haskell for quite a while and I wanted to have a play around with a purely-functional graphics pipeline.

Read more
Preview image for post 'No longer a student'

No longer a student

I've just completed my master's year at Sheffield Hallam University and accepted a job offer, life is feeling pretty great right now! Unfortunately, I haven't written a blog post in over a year because of academia, and so it's finally time to update my blog!

Read more
Preview image for post '4D Geometry Viewer'

4D Geometry Viewer

Developing a game that uses the fourth dimension is rarely discussed, if discussed at all. I created an interactive visualisation of 4D geometry to learn how to apply 3D rendering concepts to higher dimensions.

Read more
Preview image for post 'Hogs of War: Level Editor'

Hogs of War: Level Editor

A cross-platform tool that allows for the visualisation and manipulation of Hogs of War map files.

Read more
Preview image for post 'Thesis'


The path to the right decision: An investigation into using heuristic pathfinding algorithms for decision making in game AI.

Read more


Preview image for post 'Street Fighter Clone'

Street Fighter Clone

A university assignment where the goal was to study and recreate Street Fighter's mechanics in our own clone of the game.

Read more
Preview image for post 'Space'


While I have some webdev experience from my static blog, I've never ventured further. I made Space so that I could learn more about things such as databases, servers and RESTful APIs to open up more opportunities.

Read more
Preview image for post 'Clojure: Another functional programming language'

Clojure: Another functional programming language

I've always been aware of the Lisp language, but always been afraid to dive in. However, after reading 'Clojure for the brave and true', I now recognise Clojure as a simple, pleasant and powerful language.

Read more
Preview image for post 'Relocate Engine'

Relocate Engine

Relocate is a physics is an experiment with Box2D physics, Lua scripting, ImGui debugging and the SFML framework, and has been used as a starting point for a few of my other C++ projects.

Read more
Preview image for post 'HSRogue: A roguelike in Haskell'

HSRogue: A roguelike in Haskell

My first attempt at game development in the functional language, Haskell, as well as a description of the challenges I had to overcome to get things working.

Read more


Preview image for post 'An Introduction to game development in Haskell using Apecs'

An Introduction to game development in Haskell using Apecs

There have been so many attempts to pioneer gamedev in Haskell, and yet still no commercial releases. In this post I hope to clear the air a little bit and encourage new developers to try Haskell.

Read more
Preview image for post 'Vect'


Made during Summer 2018 as a part of an enterprise scheme to test not only our programming skills but our teamwork.

Read more
Preview image for post 'Of Boxes and Threads: Game development in Haskell'

Of Boxes and Threads: Game development in Haskell

My experiences of making a game in Haskell and how I think it's is a pioneering process. Despite a wiki and subreddit dedicated to gamedev in Haskell, not many people have actually succeeded making anything close to current games.

Read more
Preview image for post 'What even is Haskell?'

What even is Haskell?

In this post, I'd like to write a beginner-friendly summary in layman's terms with regards to why I have taken such an interest in a language I've only started using. Hopefully this will inspire some people to consider using alternate languages to the ones they're used to.

Read more
Preview image for post 'Let's try this again!'

Let's try this again!

  • March 14, 2018
  • 8 Minutes

A reflection of what happened when running my own games studio during placement year, as well as an update for what I'm up to now after that rough experience.

Read more


Preview image for post 'Deus Vult'

Deus Vult

This project was more of an exploration than anything else. I wanted to make an engine which could have its data serialised and manipulated with scripts rather than hard code.

Read more
Preview image for post 'Make games, not engines'

Make games, not engines

I have spent quite a lot of time lately making an engine for a game idea I have, but the result I got wasn't exactly what I had in mind. This post is my opinion on engine development vs game development based on my experiences over the last few weeks.

Read more
Preview image for post 'Redux For Games'

Redux For Games

Alacrity was really successful, but I didn't like the fact that it wasn't cross platform. To test myself even further I wanted to try porting it to OpenGL.

Read more
Preview image for post 'Start Programming!'

Start Programming!

In this blog post, I hope to inspire you to get in there and just dive into programming and to give you a few tips to get started.

Read more
Preview image for post 'Alacrity'


Alacrity is a tile-based puzzle game where you have to collect pickups before time expires. We won an award for this game and got the opportunity to showcase our game next to Sumo Digital's 'Snake Pass'.

Read more