When, in the course of learning about Haskell, I reached the point where I thought I understood what Monads were for, I wrote about it. In the comments, Seth Gordon observed that:
There are two kinds of people who try to learn Haskell: the people who give up because they canâ€™t figure out monads, and the people who go on to write tutorials on how to understand monads.
I remembered this today as yet another git tutorial rolled by in my newsreader. Maybe git is the monads of version control.
What other ‘monads’ are there out there? RESTful routing in Rails seems an obvious candidate, but I’m sure there’s more.