Writing

The Accumulator Generator: Java and Lisp

In The Accumulator Generator I ask the burning question: can we teach a new dog some old tricks? A comparison of some of the means of abstraction in the languages Java and Lisp.

The Evolution of Sequence Comparison Algorithms

A review of the literature on algorithms for comparison of biological sequences (nucleic acids and protein). The paper starts with early algorithms based on dynamic programming, Needleman-Wunsch and Smith-Waterman, and continues to the heuristic similarity search algorithms behind FASTA and BLAST. I also wrote Python implementations of Needleman-Wunsch and the vanilla dynamic programming algorithm for global alignment.

Transaction Processing Cheat Sheet

A quick primer on the basic concepts of transaction processing.

Java Development Environment

Quick notes on how to set up a Java development environment.

CVS Cheat Sheet

Quick notes on how to use CVS version control.

Stupid Perl Tricks

Quick notes on using Perl to build big scary command pipelines.