Past and Ongoing Projects

These projects are my non-research related work. The older ones are from courses I have taken at GW, and the code is not easily accesible. Code for my current projects is available here.

The projects are listed roughly by latest activity, most recent at the top.

Layout overview. Main screen close-up.

Space Strategy Game

A colaboration with Pablo Frank Bolton, this is a rough prototype of a board game we are working on. Or maybe it will be a game on its own. We don't rightly know yet. The code is largely authored by me, and Pablo is responsible for most of everything else.

The language used is Lua, which was choosen because I wanted to learn more about it. As such, the code is rather ugly. Not only that, but as this is a project we are doing for fun in our spare time, the focus for features are what we think will be cool or fun to code; not what would actually improve the game the most.

The game uses LÖVE, a 2d game framework for Lua. LÖVE is awesome, and is an excellent platform for developing prototypes quickly. I first used LÖVE for the first course I taught at The Fishing School and I have been using it ever since.

Blog homepage.

Comedic Job Postings Blog

Looking For Programmers

Written by myself and fellow student Scotty Smith. Makes fun of the "programmers wanted" flyers that seem to pop up in computer science departments. Unfortunately, after a year of weekly updates, we have decided to move to a "whenever we get around to it" update schedule.

Blockade gameplay.


A simple game for Android. The user pilots a small ship between ports to earn points while trying to avoid enemy ships. The game was the final project for Software Design for Handheld Devices. I wrote all of the code as well as drew all of art assets.

Fun fact: the ships can not sail directly down because I was unable to draw the ship in that orientation.

Z16 dev board and components.


My final project for GW's Embedded Systems class, this is a somewhat functioning mp3 player that is based off of Zilog's Z16 chip. Breakboards with an SD card reader, an mp3 decoder, and a LCD were also used.

This project mostly consisted of writing the code to allow the breakout boards work together and reading the associate data sheets. If individual components had been used instead of the breakboards, this would have been impossible to complete in a single semester.