Rezonality is the current iteration of my live coding tool. It is intended to be used for Algorave and Interactive applications.


Zing is a simple audio integration library. It is designed to work inside an ImGui app and give you access to various audio features.

Gaia Herzsprung-Russell Diagram

As part of an astronomy course I generated a Herszprung Russell diagram from Gaia satellite data

Crypto Bot

The nice part of crypto currency is how easy it is to talk to the exchanges and gather data. This project scans cryptocurrency futures for opportunities.

Sonic Pi Shader

I added a simple API to the Sonic Pi code base.


I’ve been working on a graph-based synthesizer for some time, as part of my larger live coding project.

Sonic Pi

I contributed a pair of scopes to the latest version of Sonic Pi 3.2, which has now shipped.


Zep is a lightweight editor, designed to be used inside a 3D engine.

Nsight Graphics

I currently work on the Nsight Graphics Team at NVIDIA.

Easy Render

Easy Render is a lightweight sample of how to do simple CPU drawing to a Windows Window.

Game Of Life

Implementing Game of Life is a classic programming challenge.


Recognizing gestures for a spell casting game idea.


Mgfx is a teaching framework I’ve used at York Developers. It has a simple support for building 2D and 3D applications in C++, with cross platform support.


Most graphics programmers have played with Voxels/Minecraft style of rendering.


At the York Code Dojo, we spent an evening writing a connect 4 player. We pitched the results against each other to see which could play the best.


Generating Mazes in code is a fun challenge.

Ray Tracer

Every graphics engineer should write a ray tracer at some point. I’ve done this a couple of times in C++ and Python.


Understanding how Option Trades evolve over time is key to being able to trade them effectively.


Building a lisp interpreter is an interesting exercise, especially if you are new to functional programming.


Asteroids is a fun an easy game to build. This one is part of the MGFX teaching framework.


MapMindz was a little application I wrote for Microsoft Surface 1.


Boardz was a collection of turn based board games released for iPhone and iPad. It included a server, player matching & chat.


I like to tinker at Game Development occasionally; my hex planet app shown here is one such example.

NanoVg (D3D Backend)

NanoVg is a 2D Vector Library. I contributed a D3D backend to the effort - just for fun.

Early Shader Debugger

An early shader debugger for the DirectX Reference Rasterizer


To support our developers in implementing DXSAS shader semantics, I developed an example tool that implemented the SAS processing and allowed you to combine full screen effects.

NVIDIA FX Composer

FX Composer 2.5 is a powerful integrated development environment for shader authoring.

Lens Flare

Texture Masking for Faster Lens Flare

NV Shader Linker

NV Shader Linker was an attempt to build a traditional fixed function graphics pipeline using a series of shader fragments.

NVIDIA Effects Browser

My first job at NVIDIA was writing a tool to enable developers to understand vertex and pixel shaders.

DX Driver

At 3DLabs, I ran the DirectX Driver team. I worked on DirectX 2,3,5,7 and 8 drivers - mostly for Permedia & Glint chips.