Access Watch is a flexible access log processor that helps operators analyze the web traffic reaching their infrastructure.
I gave this talk to the Minnesota Clojure user group in 2015. I believe that software engineers ought to talk more about software decomposition. In this talk I compared several implementations of the KWIC system described in David Parnas's seminal paper "On The Criteria To Be Used in Decomposing Systems into Modules". I also relate the insights from this paper to the work of the architect Christopher Alexander in "Notes on the Synthesis of Form".
Some solutions in Clojure and Racket for the exercises in the incredible work of synthesis that is Structure and Interpretation of Computer Programs.
I like to learn from first principles. I started to dive into machine learning with Tom Mitchell's book "Machine Learning."