Here’s an incomplete list of the stuff I made. Some of it is maintained; some of it is not. All of it is published under a permissible license.


The following pieces of software are stable. They have been around for a significant amount of time, are battle-tested and considered stable. You can rely on them.

is a web server that you can launch instantly in any directory.
helps build command-line applications in Ruby.
implements memoization for Ruby.
records and analyses runtime measurements for Ruby apps.
is a Ruby library for handling plugins.
is a fast and flexible static-site generator.
supports merging, buffering, … Ruby enumerators.

The following pieces of software are experimental and unstable. They are work in progress. Their APIs are unstable, they are buggy, but… they are probably more exciting than the production-ready ones. Play around with them, but don’t use them for real work.

is a semantically-rich markup language for prose.
is a parser combinator library for Ruby.
allows writing stream-processing code in Ruby.
is a game engine for Crystal.
is a VM emulator and assembler written in Crystal.


I’ve given a handful of talks over the past few years. The pandemic has taken some of the joy (and possibility) out of it, but I’m hoping to pick it back up in the near future. Here is a list of talks I have given.

An introduction to fibers
Static sites with nanoc (2012)
A Small Smalltalk Talk (2011)
Make your web sites faster! (2009)
Metaprogramming and DSLs in Ruby (2009)