Practical Clojure by Luke Vanderhart & Stuart Sierra