This seemed like a really great explanation. But I have no idea if it actually is, or it if it just feels that way because I finally have some Haskell coding time under my belt.
Regardless I enjoyed the read and found it a useful way to think about monads