In my free time I enjoy working on various software projects.
Fretboard diagram generator for fretted stringed instruments.
An AI player for the board game Hive.
A collection of simple games built on the LÖVE game framework.
An Arduino library for reading Sega Genesis controllers.
An Arduino library for reading Atari 2600 controllers.
A .NET library for accessing data from the CAL FIRE website.
- The Hacker’s Diet with LibreOffice / OpenOffice.org
OpenOffice.org spreadsheets to follow “The Hacker’s Diet”.
An extendable Twitter bot written in C#.
Text editor that “punishes” you when you stop writing.
A .NET library for generating simple EPUBs.
- RSS-Base for WordPress
WordPress plugin to make all relative URLs absolute.
- TEGS Event Graph Simulator
Discrete event simulation software using event graphs.
Mobile app for assisting with word puzzles.
I have been programming since age eight, when my dad made me sit down and read Programming C for Unix. I wrote C code using Metrowerks Code Warrior for the classic Macintosh; though I didn’t venture much further than some useless example apps.
Eventually I got tired of C and spent many of my formative years scripting simple games and animations in HyperTalk. By junior high I’d switched my focus to HTML and web design, but in high school I finally took actual computer science classes and learned C++. By graduation I decided to switch to coding in Java.
I used Java extensively throughout and after college, mostly to write games and gaming utilities. Meanwhile I also picked up MATLAB, PHP, and VBA. While serving in the Peace Corps I had to learn good ol’ BASIC because I was required to teach it.
After my volunteer service I was a strict Linux user, and after toying with Ruby I picked up Python as my go-to for personal projects. Then I started working for Microsoft and learned C#, and as I started using Windows at home C# became my go-to language for personal projects.