A Wolfenstein-3D style engine built on the PICO-8 fantasy console. I wanted to see if I could implement raycasting from scratch, and the PICO-8 provided a fun set of tools and constraints for doing so.


RSpec Sleep Study

Sleep Study (gem rspec-sleep_study) is an RSpec formatter that shows you where your specs are blocking on sleep statements in your code.

githubblog post


Bookify is a gem for converting Markdown documents into book style, two-column PDFs. It starts by converting the Markdown to HTML using Redcarpet. Then it walks through the DOM, and when it encounters a registered component type, renders it using Prawn PDF.



Jargon (no longer active) is a publishing platform for writing about code. It supports an extended Markdown syntax for embedding code snippets in articles, and publishing is handled by checking in content to a GitHub repository.

blog post


ChessForge is a chess opening explorer written in Ember on top of a Rails API. It has a database of 75 million chess positions and shows frequency and win / loss / draw percentages for different opening moves, bucketed by player strength.

Rails 5 Chess

To play around with Rails 5's new Action Cable feature, I built a simple chess server that allows two people to play a game a chess.

githubblog post


A Markov chain Twitter bot that uses Dwarf Fortress stories as its corpus.


What Foods Are In Season? is a Sinatra app that shows what fruits and vegetables are in season in your state.


Withings Graphs

Withings-graphs is a small app that connects to the Withings OAuth API and displays data using amCharts.



Evolution is a program I wrote that tries to mimic a source image by randomly drawing polygons.

githubblog post

Urbanairship Gem

The Urbanairship Ruby gem is a library I wrote while developing Groupon's push notification system. It allows you to send push notifications to iOS and Android phones using the Urban Airship API.

I maintained the gem for two years while working at Groupon, and it's now maintained by the Urbanairship team.

githubblog post


Grams was a weekend hack project I did that collects Instagrams from a specific neighborhood and tweets the best ones.



Lovemap is a tile-based mapping engine for the LÖVE game development framework written in Lua.



text/cats is an innovative content format that represents JSON data in the shape of playful kittens. It was first used in Groupon's public and internal APIs.