Fork me on GitHub

I build web applications using Ruby.

When I'm not writing software, I also enjoy traveling, playing tennis, playing piano, and thinking about economics.

  • GitHub
  • Twitter
  • LinkedIn

Developing:

BluePassers

An online community and leader-board for JetBlue BluePass holders. Tweet your flight numbers and we'll track your journey!

Ruby Scribe

An intelligent AST pretty-printer that generates nicely-formatted Ruby source code given Ruby S-expressions.

Message Block

A replacement for error_messages_for that combines model errors and flash messages and is much more powerful/flexible.

Has Draft

Allows for your ActiveRecord models to have "drafts", edited separately from the live version.

Has Meta Data

Allows for your ActiveRecord models to have associated meta data without a separate model.

RSpecify

Converts your Test::Unit (or minitest) tests with the help of ruby_parser, a series of AST transformations, and ruby_scribe.

Factory Girl Upgrader

Uses ruby_parser and ruby_scribe to dynamically convert factory_girl factories in the V1 DSL into the V2 DSL.

Vexflow-JSON

A wrapper for the VexFlow staff engraving library to render staff notation from simple JSON.

Writing:

Presenting:

Travel Hacking

BarCampRochester - October 19, 2011

Tips, tricks, and "hacks" for getting the most value for your money out of travel.

Transforming Ruby Code

Boston Ruby - October 11, 2011

Learn about automated refactoring, coding style/best practices enforcement, DSL translation, and more through AST transformations.

The Ruby Idiom

BarCamp Rochester - Spring 2011

An overview of some of the unique features of the Ruby language and why Rubyists are so passionate about their craft.

World Traveling on a Shoestring Budget

BarCamp San Diego - Winter 2011

Traveling doesn't have to be expensive - I cover tips and tricks for traveling internationally on a shoestring budget based on my recent experience traveling 54,000 miles around the world for two months.

Refactoring ActiveRecord Models

SDRuby - February 3, 2011

It's always important to keep your ActiveRecord models in tip-top shape. I explore several techniques for refactoring models and preventing them from getting out of hand.

Message Block & Testing Gems with Cukigem

SDRuby - December 2, 2010

Showing one of my gems, message_block, and how I went about testing it using a host rails application with the help of Cucumber and Cukigem.

Testing with Cucumber

Rochester.rb - July 22, 2010

Overview of Cucumber for behavior testing and using Pickle.