title: What programming task provided your breakthrough with monads?
body: <p>In a recent blog post about a probability monad he'd written, Mark Dominus wrote, <a href="http://blog.plover.com/prog/haskell/probmonad.html" rel="nofollow noreferrer">"So I feel like I've finally arrived, monadwise."</a></p>
  
  <p><a href="http://gbacon.blogspot.com/2007/02/my-first-monadic-program.html" rel="nofollow noreferrer">My first monadic program</a> was an awkward solution to <a href="http://projecteuler.net/index.php?section=problems&amp;id=32" rel="nofollow noreferrer">Problem 32</a> from <a href="http://projecteuler.net/" rel="nofollow noreferrer">Project Euler</a> using <a href="http://book.realworldhaskell.org/read/using-parsec.html" rel="nofollow noreferrer">parsec</a> and the <a href="http://www.haskell.org/all_about_monads/html/maybemonad.html" rel="nofollow noreferrer">Maybe monad</a>.</p>
  
  <p>What were you working on when the light finally turned on for you? Provide at least a sketch of the code you wrote. Knowing what you know now, how would you improve it and why?</p>