Welcome to my 1994-style homepage.
Various bits of open-source software I've created or contributed to over the years.
A Perl module for building nice OO command-line applications, with sub-commands, option processing,
and automatic generation of help text and man pages. Inspired by MooX::Options and MooX::Cmd
(which are themselves descendents of MooseX::Getopt and MooseX::App::Cmd), but unlike the above,
it's pure-Perl which allows it to be used in easily-distributed "fatpack" apps.
Yet another Perl IRC bot. Based on an old codebase called Sporksbot, but updated to be fully async
(using Net::Async::IRC, Mojo::Pg, Mojo::UserAgent, etc.) and with a few other bells and whistles.
Adds Unicode case folding via the fc operator to perls that lack it. The fc
operator is part of perl itself since version 5.16, but by using this module, it's made available
in any perl from version 5.8 onwards. Contains both pure-perl and XS versions.
Talks and Papers
I've given a number of talks over the years, mostly at Perl-related events. Here are a few of them.
Load Balancing, Consistent Hashing, and Locality - Velocity NYC, New York, NY.
Practical Load Balancing with Consistent Hashing - Google Algorithms Seminar, New York, NY.
Improving Load Balancing With a New Consistent Hashing Algorithm - Vimeo Engineering Blog
Marpa - FLOSS Weekly Episode 321 with Randal Schwartz and Gareth Greenaway.
Parsing Made Easyish with Marpa - YAPC::NA 2014, Orlando, FL.
StatsD and You - Easy Application Metrics - Pittsburgh Perl Workshop 2013, Pittsburgh, PA.
StatsD and You - Easy Application Metrics - YAPC::NA 2013, Austin, TX.
Parsing Made Easyish with Marpa - Perl Oasis 2013, Orlando, FL.
Web::Simple: A Perl Web Nano-Framework - Shutterstock tech talk, New York, NY.
Web::Simple: A Perl Web Nano-Framework - YAPC::NA 2012, Madison, WI.
Arduino-based GPS-disciplined NTP server - YAPC::NA 2012 Hardware Hackathon, Madison, WI.
Dynamic Website Translation with Catalyst and Petal - YAPC::NA 2007, Houston, TX.