Projects and Experience

This page is to give an overview of some of the projects and technologies I’ve worked on. It should give an idea of the types of skills I’ve picked up along the way in a way that my resume/LinkedIn profile can’t do. The projects aren’t necessarily in any order, although I’ll probably be posting newer ones near the top.


Project: Knowledge Manager [2016-]

Knowmad July 4 2016 A

This was a “for fun” project I build using Node.js, Angular.js, D3, and a number of other technologies. It would read my data from Trello, Evernote, etc. and aggregate it together for a number of uses. It currently has a basic browser, but I am in the process of a graph explorer view as well as supporting full search using Elastic Search.


Project: Procedurally generated textures using Markov Chains [2014]

Texture Generation: Markov Chain vs Random

I only really posted a brief article about my efforts here, however, I wrote a system to help generate bookshelf textures for a library level in my game. I did this because I wasn’t happy with randomly generating different coloured books; it felt cheap to me. In normal, well-organized libraries (at least in the early 1900’s), it would be more normal to see sets of books in a series. This means that you’ll see groups of identically coloured books instead of the books being scattered around the shelves.

I implemented a Markov chain in Java to help guide the process of placing books on the shelves.


Project: 2D-in-3D Game and Game Engine (Paper Donkey/Zombie Mansion) [2012-]

This was a project I spent a number of years slowly working on. I built a full engine and game from scratch using Java, Processing (P5), OpenGL/GLSL, and JavaScript (as a scripting language). I’ve posted a number of videos to show off some of the things it could do but here is one of my more recent ones:

The engine made games look like they were regular 2D, but the player could rotate the camera in 3D to look around rooms. It had a built-in physics engine supported by Box2D and there were many other features of note that I wrote myself. Among some of my favourites are: a particle effects and post-processing system, a pathfinding system (bellman-ford implementation), and a level editor.


Project: BioHive – A comparative genomics visualization tool [2010]

I wrote this tool for a bioinformatics visualization paper I was writing while I was working on my Master’s degree. It was written in Processing (P5) and allowed a user to explore a genomics matrix for similarities using preattentive processing to highlight strengths and weaknesses (Gestalt psychology). I finally found my old source code for this, but I need to patch up some legacy dependencies to get screenshots.




%d bloggers like this: