Here you can find some of the various projects I have worked on over time. This list is by no means exhaustive.


Here you can find a small list of some of my personal software projects. This list is probably woefully incomplete. At any given time I have several projects going on and I only occasionally get around to updating this page.

The Bare Bones Programming Language

The Bare Bones Programming Language is a simplified programming language that I designed and implemented for my final project for a Concepts of Programming Languages class I took during my senior year of my Computer Science degree. It implements a simple lexer, a recursive decent parser, and a code generator that outputs valid C-language code.

The project is written in C++.


Screenshot of the MTiler application running

mTiler is a utility for Microsoft Windows that merges incomplete map tiles into complete tiles. It is written in C# and uses Windows Forms for the GUI.

Intel 8080 Disassembler

Output from my Intel 8080 disassembler

A very simple disassembler for the Intel 8080 microprocessor, written in C. I wrote a blog post detailing the basics of how this project works here .

You can view this project on Github .


This is a simple command line utility that converts waypoints in a GPX file into a CSV file of waypoints. This was developed to allow me to view some of my personal landforms databases in a spreadsheet. Check it out on Github .


MBExport is a small, simple command-line utility that dumps map tiles from an MBTiles database.

NOAA Animator

This is a simple PHP application that downloads weather radar images from NOAA and converts them into animated GIFs. It is intended to run on some interval as a CRON job. You can view the project on Github .