I start with writing a logging monad. I then mutate it into a version of the State monad specialized for logging. I finish with the key parts of the monad and what they do. If this video is successful, it'll let you read papers on monads in Clojure much more easily than you'd otherwise be able to.
The full series:
vimeo.com/21307543 (this one)