A great deal of my commitment to open source is courtesy of my clients. I use open source every day and whenever something needs to be fixed I try to push my changes upstream.
My own projects
I’ve ported ActiveRecord’s Enum to Mongoid. It helps working with fields that accept values from closed list of options (think: states, modes, types).
Other people's projects
Mongoid is an ODM (Object Document Mapper) framework for MongoDB in Ruby. It was always closely following ActiveRecord syntax giving it an edge over competing alternatives. Started privately by Durran Jordan it is now an official project of MongoDB the company. I had some commits and documented many issues.
Sparkle is the most popular framework for implementing automatic software update in your (non App Store) Mac applications. There’s literally hundreds of applications that use Sparkle. It was created and maintained by Andy Matuschak. I used it once and sent some fixes.
CanCan is an authorization library for Ruby on Rails. It checks whether the user is allowed to access specific resources. All permissions are defined in a single location instead of being scattered across controllers and views. CanCan was developed by the great Ryan Bates and is now maintained by its community. I’ve made some commits.
Delayed::Job is a Ruby gem that encapsulates the common pattern of asynchronously executing longer tasks in the background. It was extracted from Shopify. I sent some fixes for its Mongoid backend.
Inherited resources was a useful gem that helped Ruby on Rails developers to follow skinny controller – fat model paradigm. It sped up development and allowed developer to focus on what made his controllers different. The gem was maintained by Jose Valim. I had some commits.
KineticJS was a fast, robust, HTML5 Canvas Library. It was created and maintained by Eric Rowell. I’ve sent some fixes.
QJSON is a library for the Qt framework that maps JSON data to QVariant objects. There’s no better way to read or write JSON in your Qt-based application. QJSON is a project started and maintained by Flavio Castelli. I had some commits.
CutyCapt is a command line tool that uses WebKit (via Qt) to render and capture web pages. In addition to many image formats you can also save a web page to PDF which allows copying and pasting of text. WebKit is a great standards-compliant browser engine (along others used in Chrome and Safari) and CutyCapt’s command line interface is particularly handy if you want to capture web page contents in a shell script. CutyCapt was written by Björn Höhrmann and at Flux Inc. we used to maintain a fork.