I live in Brooklyn, New York, where I build things at Canvas.
Following are a few of my projects, in no particular order.
A library for capturing and restoring user selections over text and HTML elements when the DOM tree of those elements may be changing.
A package for managing communication between WebSocket message streams and a ShareJS client.
A PostgreSQL adapter for livedb. This was challenging, as I'd never actually needed to use the extremely tricky "update or insert" in PostgreSQL before.
An ambitious rewrite of the Heroku Dashboard, it's an Ember.js app backed by a set of small, sharp Node modules made for interacting with the Heroku API and other parts of the platform.
A Dart package for interacting with logfmt-style log lines. This is my first work with Dart.
A library for working with APIs in Ember apps, using localStorage as a cache. The new Heroku Dashboard uses this to communicate with the Heroku API.
A rewrite of my clusterflock module based on some ideas and idle time I had while at Nodeconf EU, 2014. This is the module handling graceful worker shutdowns and restarts in the new Heroku Dashboard.
A piece of Express middleware for proxying requests to the Heroku Platform API.
A Node module for making requests to the Heroku Platform API. It is generated automatically from the API schema.
A Node module for monitoring workers and gracefully shutting down and restarting them.
A clustering HTTP server for Node apps.
A Rails engine for managing feature rollouts.
Simplified stubs for testing an Excon API client.
Movie ➔ gif ➔ CloudApp on the command line