Projects

Games

gamepad Quack Stanley

Quack Stanley is an Apples-to-Apples-style party game, inspired by Snake Oil (designed by Jeff Ochs). I built this as a project for learning the Elm programming language, but it ended up being a fun game. Give it a spin and let me know how you find it.

gamepad pokerdot

pokerdot provides a free online poker game for you and your friends. Specifically, pokerdot uses the rules for no-limit Texas hold'em. It is still a work-in-progress and progress is very slow, but should be playable as-is.

Side-projects

build ADALINE

An interactive model of an ADALINE, which is a neural network with a single neuron that can be trained to recognise simple patterns. This is a foundational model for understanding neural networks and machine learning.

gamepad Indoneasier

An interactive player aid for the board game Indonesia. The merger calculator can take the place of a mergers cost lookup table, leaving the players free to consider the strategy of the merge. A rules summary is included to help while playing the game.

watch PebRunner

I created a wrist-assistant for Netrunner matches, my first attempt at a real Pebble app. I was kicked into action at the time by the imminent arrival of my new Pebble Time but now that's arrived the app's moved on a fair bit. If like me, you're a Pebble owner with a love of Netrunner, then you must take a look!

watch Pebble meeting mode

After an excellent suggestion from @Fleagret, I created a very simple Pebble watchface designed for meetings. It displays the time very clearly and buzzes every 5/15 (short/long) minutes to help you keep track of how long a meeting is taking. I find it especially useful when I'm conducting an interview and need to carefully track the time without obviously looking at a clock.

palette Cubes

Cubes is a piece of dynamic art, created using elm and WebGL. Originally a reason to tinker with elm-3d-scene, it ended looking quite nice.

build Luna

Luna is a physics demonstration written in the elm programming language, originally written to visualise gravitational slingshot manoeuvres.

gamepad Game of Life

An implementation of Conway's Game of Life in a functional manner, using Scala.

gamepad Nanpure

A Sudoku UI written in Elm.

music_note Meter delta

Meter delta is a JavaScript library that enables dynamic time signature improvisation for musicians.

Other (old) projects

DjanJinja

DjanJinja lets you use Jina2 templates in Django. There are other solutions for this problem available but I wasn't satisfied with them. Development on DjanJinja stalled so my fork of the project is the place to go if you want to use it, but be aware I last updated it for Django 1.3 so it is pretty out of date now.

PythonGit

I think the README says it best: This is a silly repository.

It's a Python wrapper around Git shell commands that I threw together for a little project that was going to use Git as a database.

MySQL unicode converter

By default MySQL uses latin encoding but Django assumes it is unicode. If you have an existing latin database (if you only realised after go-live, say (oops)), this script will convert the database to unicode for you.

Note it won't fix any already-corrupted data (I'm not magic), but it will set the database up properly so no more data will be damaged.

We've all been there.

Very old things

Bene

When I stopped writing PHP I dumped my MVC-framework-in-progress on Github. It's amazingly out of date now but I think there were some good ideas there and I spent a long time on it so have a look if you're interested.

Misc JavaScript

Take a look at my GitHub. I used to write quite a lot of MooTools / jQuery plugins and I got round to putting some of them up there.