In my free time I enjoy working on personal software projects.


Active Development


  • AtariController
    An Arduino library for reading Atari 2600 controllers.
  • CalFire
    A .NET library for accessing data from the CAL FIRE website.
  • The Hacker’s Diet with LibreOffice / spreadsheets to follow “The Hacker’s Diet”.
  • HawDict
    Create digital versions of popular Hawaiian dictionaries.
  • HawKeys
    Easily insert ʻokina and kahakō characters used in Hawaiian.
  • Jirani
    An extendable Twitter bot written in C#.
  • PunishPad
    Text editor that “punishes” you when you stop writing.
  • QuickEPUB
    A .NET library for generating simple EPUBs.
  • RetroLove
    A collection of simple games built on the LÖVE game framework.
  • RomSort
    Sort roms into alphabetical sub-directories.
  • RSS-Base for WordPress
    WordPress plugin to make all relative URLs absolute.
  • SegaController
    An Arduino library for reading Sega Genesis controllers.
  • WordHash
    Mobile app for assisting with word puzzles.

See also my profiles on GitHub and Launchpad.

Coding History

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.

However, working at Microsoft means never being complacent in your technical knowledge. In the course of my career I’ve also had to learn C++/CX, Lua, Javascript, T-SQL and more.