or learn more

The best things in 2010

Dec 30, 2010

Great things and people that I discovered, learned, read, met, etc. in 2010. No particular ordering is implied. Not everything is new.

Great blog posts read

Understanding Pac-man Ghost Behavior

Clojure Unsupervised Part-Of-Speech Tagger Explained

Reading Code is Good, Writing Documentation is Better

SHRDLU Resurrection

Herbert Stoyan’s Lisp collection at CHM

Federer as Religious Experience

Monads are not Metaphors

The Original Dungeons and Dragons

Manly Slang from the 19th Century

Most viewed blog posts by me

Clojure’s Mini-languages

MartinOdersky take(5) toList


Favorite technical books discovered (and read)

A Programming Language by Iverson

Transaction Processing by Gray

Thinking Forth by Brodie

Land of Lisp by Barski M.D.

Elegant Ruby by Olsen

Favorite non-technical books read

Breakfast of Champions

Perdido Street Station

In the Country of Last Things

Go for Beginners

Kafka on the Shore

Number of books read


Number of books written


Number of papers read

≈ 150

Number of papers read deeply

≈ 40

Favorite musicians discovered

Pantha du Prince

Oneohtrix Point Never

Sun Ra

Andrew Thomas


Favorite Albums Released in 2010

Andrew Thomas – Between Buildings And Trees

Pantha du Prince – Black Noise

Demdike Stare – Liberation Through Hearing

Favorite TV series about zombies

The Walking Dead

Favorite programming languages (or related)

Clojure, Haskell, Io, Qi, Coffeescript, Lombok, Datalog

Programming languages used for projects both professional and not

Clojure, Scala, Java, Python, Javascript, SQL, Bash, make, Ruby, C, C++, Potion, CLIPS, Ix, Common Lisp, Scheme, Prolog, Datalog

Favorite papers discovered (and read)

Soft Stratification for Transformation-Based Approaches to Deductive Databases by Andreas Behrend

The Semantic Elegance of Applicative Languages by D.A. Turner

Practical Predicate Dispatch by Todd Millstein

The Design and Implementation of Typed Scheme by Sam Tobin-Hochstadt and Matthias Felleisen

Extending the Scope of Syntactic Abstraction by Waddell and Dybvig

ORBIT: An Optimizing Compiler For Scheme by David Kranz

Still haven’t read…

Lisp in Small Pieces, Concepts, Techniques, and Models of Computer Programming, Snow Crash, Spook Country, A Fire upon the Deep, Ulysses, Programmer avec Scheme, The Sirens of Titan, Manufacturing Consent

Best conference attended

The first Clojure Conj

People met, read, worked with, followed, and/or corresponded with whom motivated and/or influenced me greatly and always made me think

My wife, Christopher Houser, George Jahad, Christophe Grand, Rich Hickey, Stuart Halloway, David Liebke, Zach Beane, Russ Olsen, Peter Seibel, Jeffrey Straszheim, Brenton Ashworth, Anthony Simpson, Zachary Kim, Stanislav Datskovskiy, James Iry, Steve Yegge, Outlaw Vern, Yukihiro Matsumoto, Meikel Brandmeyer, Nurullah Akkaya, Chas Emerick, Ranier Joswig, Steve Jenson, Lau Jensen, Erik Naggum, Oleg Kiselyov, Christian Neukirchen, Shiro Kawai, Kazimir Majorinc, Steve Webster, Mark Tarver, Manuel Simoni, Paul Snively, and Jürgen Hötzel.

Favorite code read

Pods by Rich Hickey

debug-repl by George Jahad

html.clj in Marginalia by Zachary Kim

regex by Christophe Grand

horizon.clj by Kevin Downey (aka. hiredman)


scala-dataflow by Jonas Bonér

letrec by Michał Marczyk

thrush by Chris Houser

Service DSL by Rainer Joswig

tailopt.js by Guillaume Lathoud

Baysick with continuations by Daniel Spiewak

Wood and Stones by Reginald Braithwaite

Life changing technology

Kindle 3



Software Preservation Society

Plans for 2011

  • More Haskell
  • Read more papers
  • Read more fiction
  • Release more open source code1
  • Empty the “Still haven’t read…” list
  • Noodle through another book2
  • Pescetarianism
  • More hammock time

See you next year.


  1. One side-effect of the book is that I have not had time to bake the other half of many private projects. It’ll be nice to actually have some time to work on code and push it out into the wild… instead of just writing about it. 

  2. Everybody does have a book in them, but in most cases that’s where it should stay. — Christopher Hitchens 

10 Comments, Comment or Ping

  1. Empty the “Still haven’t read…” list

    Surely not! If you don’t conj more stuff on to the list during 2011 then something is wrong. =)

  2. Ah, I remember reading Iverson’s book! It inspired me to write an APL interpreter for my final year BSc Comp Sci project (in Pascal) – and that experience inspired me to take on a PhD focused on functional programming language design and implementation in the early/mid 80’s!

  3. F_D

    Great list, Mike. And once again you beat the hell out of me on the “books read” list.

    So glad you enjoyed “Perdido Street Station” and “Breakfast of Champions”.

  4. Really good list. However I think there’s a typo in the technical books section, did you mean Eloquent Ruby rather than Elegant Ruby?

  5. I enjoyed the list and now I have a question. How do you personally access the papers you listed? I am curious about the “applicative languages” one but the ACM portal seems to want to sell it to me. Do you have a subscription or is there another route?


  6. @DPrichett

    I do not have a subscription to the ACM. Everything that I read (so far) is freely available via school sites, Citeseer, other. The applicative languages paper is from a book called “Functional Programming and its Applications: An Advanced Course” that I happen to own.

  7. @indy

    When I read it (a draft) the title had not yet been changed.

  8. How do you manage to read 77 books a year? Do you do something like speedreading or do you just spend a lot of time reading? And of course the literary question of our times: ebooks or dead trees?

  9. Jeff Rose

    Ooooh, Snow Crash and Fire Upon the Deep, you are in for a treat with those. If you haven’t read A Deepness in the Sky, I’d read that before both of them though. It has some of the coolest sci-fi writing about software development in the distant future.

  10. Really good list. However I think there’s a typo in the technical books section, did you mean Eloquent Ruby rather than Elegant Ruby?

    It’s not exactly a typo – at the point when Fogus read the book it was called Elegant Ruby. Just before it went to press we changed it to Eloquent Ruby. Publishers!

    Russ Olsen

Reply to “The best things in 2010”