Projects are organized into web development, game development, and miscellaneous categories. Also of potential interest: my intermittent open-source contributions.

Web Development

SchoolBot 2015–2016

rails, rspec, ember, leaflet, postgres, redis, heroku, s3

Mobile web app that tracks school bus locations. Originally an in-house Vermonster product, now an open-source project with a paid hosting option, I led development and documentation of SchoolBot from its conception through launch.

Sesame 2015

sinatra, redis, slack, twilio, heroku

Slack-operated access control for telephone-based building intercom systems. Developed for the Vermonster office.

CSH WebNews 2011–2015

rails, postgres, coffeescript, jquery, nntp

Web-based client for the Computer Science House news server, with progressive enhancements, email notifications, and a JSON API supporting third-party iOS and Android apps. Actually two projects:

  • WebNews v0, a sprawling mess of spaghetti that was my second Rails app ever, but nevertheless saw wide adoption and had 100+ weekly active users within CSH for several years.

  • WebNews v1, an unfinished 2015 rewrite that only got as far as the API and its documentation.

Haddock on Heroku 2011

sinatra, heroku

Dead-simple web frontend for Haddock, a gem that generates memorable passwords.

Clobber on Rails 2011

rails, sqlite3, jquery, svg, heroku

An online version of an obscure board game, created for a class project, and my first Rails app ever.

Game Development

Warp Zone 2012

gamemaker 8

Think fast! Pilot a spaceship through twisting tunnels at warp speed, neutralizing obstacles with the correct tool at the correct time.

NetHack Achievements 2011

c, mysql

During a brief stint on the BingeHack project, a fork of NetHack, I designed and implemented 80+ modern achievements for this decades-old adventure game. That web site and the first dozen or so achievements are the work of my college roommate, @clockfort.

Vectrocity 2009

flash, actionscript 3

Space shoot-‘em-up with a retro vector style. Dodge lasers, collect powerups, and blast waves of ships into glowy green line segments.

Black Hole Wars 2008

gamemaker 7

Unfinished head-to-head game where players slingshot asteroids around using black holes.


Wāpuro Rōmaji 2018


Code exercise based on a real-world text conversion problem. Created for Wistia Engineering.

Homebrew Notifier 2015


Push-button-install script that notifies you when any of your Homebrew packages are outdated.

Advent of Code 2015


Solving 25 days of programming challenges in Ruby. Not yet complete.

Giant Robots Posts 2012

rails, git, open source

While apprenticing at thoughtbot, I had the privilege of writing a couple posts for their popular tech blog, Giant Robots Smashing Into Other Giant Robots:

Twittjr 2009

ruby, ibm basic

Pseudo-live feed of the most recent public tweets matching a specified search… on an IBM PCjr.