I have a resume.
I'm an open source geek with thousands of ideas and only 10 fingers. I love networking, distributed filesystems, AI, any infrastructure that lets those things happen better, and any tools that lets me write (and maintain) that stuff more easily. I love new technology and I love applying old technology to new problems.
I code mostly in C and Perl these days. I tend to do most of my prototyping in perl and then recode the fast bits in C. When something gets in my way, I try to fix it, and in many cases I end up sending the author a patch. The internet is littered with evidence of this.
So, here's a list of stuofftware which I think is noteworthy at this particular moment.
bfr is a command-line pipe buffer, which attempts to decouple read latency from write latency. It works, but is getting fairly long in the tooth by now.
IO::Socket::TIPC is a module that allows you to use TIPC networking in perl.
App::SVN::Bisect implements a “svn-bisect” tool, which looks and works a lot like “git bisect”, but for subversion.
AI::Evolve::Befunge is an experiment with AI, using an evolutionary algorithm to generate befunge code that plays othello.
Hrm. I've got lots of half-baked stuff. All of this stuff is currently on the DarkPAN. Some of it might see the light of day, most probably won't.
Net::Cluster will be an application-layer P2P network library, with reliable multicast support. This is about 80% completed.
Noidfs will be a clustered filesystem. It is waiting for Net::Cluster , and is only about 20% completed.
Album::Rename is a nice script to normalize filenames of songs in my music collection.
Lint::Music is another nice script, this one runs a barrage of checks against the files in my music collection, to detect corrupt and misplaced files, and verify that they have been accurately tagged.
Linux::Input::Powermate is a module that lets you read from and control a Griffin Powermate USB device under linux.
LCD::Crystalfontz::635 is a module that lets you control a Crystalfontz CFA635 USB device under linux.
Befunge is a topographical programming language, well suited (in my opinion) to AI research. Language::Befunge is a perl module that implementing this language, which serves as an excellent base for my AI::Evolve::Befunge project. I've done some work to add N-dimensional funge support to this module (previously it assumed N is 2, resulting in a 2-dimensional topology). I also work on fixing various corner cases which crop up from time which result in crashes or infinite loops. I find those corner cases by generating random trash and trying to run it, which is a fun hobby.
Parrot is a virtual machine for lots of dynamic languages. I'm a fairly regular direct contributor, I also help indirectly to various degrees by triaging bugs, reviewing/applying patches and mentoring.
I have an ohloh page with some more details of my contributions to third party projects.