This is a dumping ground for some of the side-projects I've built.


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!

Pebble meeting mode

After an excellent suggestion from @Fleagret, I created a very simple Pebble watchface designed for long 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 giving interviews but not facing the clock.


This was something of a hello world for me. I'd not done any Pebble development since the early days and the SDK has moved on quite a bit. This helped refresh my memory and gave me a chance to look at some of the new functionality while working through the tutorials.

Game of Life

I've implemented Conway's Game of Life in a functional manner, using Scala. Blog post to follow...

Meter delta

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


I won a LeapMotion devkit at the last Guardian hack day. I've started fiddling with it but between 'life' and building this website I've not had time to do anything I can show off just yet...

Other (old) projects


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.


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


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.