An iOS and watchOS app detailing the 16 randoms and 22 blocks from the USPA 8-Way Dive Pool.

View on GitHub →


A Ruby interface to the GreatSchools API. GreatSchools is a community resource to find and share information about schools.

View on GitHub →


A Ruby library for working with the After the Deadline service. After the Deadline is a language checker with contextual spell checking, advanced style checking, and intelligent grammar checking.

View on GitHub →


A Ruby library for currency conversion using European Central Bank's Euro foreign exchange reference rates.

View on GitHub →



Cocktail: Evolution vs Design (2014)

Can't decide what drink to make? Choose Intelligent Design. Select all the ingredients you want to use, and we'll give you all the possible cocktails that use all those ingredients.

Chose Evolution, and start with a base. Then evolve your drink. At each stage, we grow in complexity, where complexity is the number of ingredients used. In the first stage, we select a set of cocktails with as few ingredients as possible that include the base. Then, select a cocktail from that set, and evolve it. We'll find a set of cocktails that include ingredients similar to the selected cocktail, but use even more ingredients.


Encore! (2013)

Encore! is a personal journal system for live events. I have a bunch of old ticket stubs, t-shirts, guitar picks, drum sticks, autographed CDs, etc from going to concerts and wanted a place to catalog that information. Encore! is the start of that system. You are able to review shows that you have been to, verifying you were there by uploading a photo of the ticket stub from the event (not required) and upload photos/embed YouTube videos related to the show.


We Spruce (2012)

weSpruce turns people-powered community beautification in to a game! The platform enables you to quickly and easily clean your own home town. Report and fix problems, earn points and compete to be the best do-gooder in your town!

It works by enabling users to report problem spots within their community. With the power of Google Maps, users can report problems right in their own home town. Then, other users can see those problems, fix them, and after they report them as done, they get points. More points means more achievements. The more you participate, the higher your score. Interact with other locals through comments, photos, and profiles!


Movie Night (2010)

The idea behind Movie Night is to allow you to create a virtual theater where you and your friends can come together to watch a synced movie. We worked with VideoJS to display and control the streaming video. Adding a MST3k flair to the experience, the Pusher API allowed us to have the audience chat about the movie as they watch it. We also took inspiration from the class VH1 Pop-Up Videos and added trivia that would periodically appear around the screen as the movie plays.

Movie Night won the Zencoder sponsored exhibition match for the Best Use of Audio/Video.