Analogies are not very helpful for learning or explaining monads. The more you try to anchor the idea to something you already know, the further away you understanding what's going on.
I think that when teaching or learning monads the concept to focus on is composing smaller units (computations) into larger ones (aggregate computations), often by passing the output from one computation into the next one. It's also important to understand that once you have composed several small computations into a large computation you do not care or necessarily even know that the large computation is composed of smaller ones.
After meditating on that idea for a while it's necessary to see many different examples of useful monads. The 'All About Monads' tutorial (probably the best monad tutorial) has a section which is all examples. You need to see as many examples as possible because you can't understand monads by looking at a single specimen.
Monads are an abstract generality which provides a similar structure to many different things that you would never have expected to have much in common. Without understanding that commonality, you're missing the point and monads will remain incomprehensible.
I think that when teaching or learning monads the concept to focus on is composing smaller units (computations) into larger ones (aggregate computations), often by passing the output from one computation into the next one. It's also important to understand that once you have composed several small computations into a large computation you do not care or necessarily even know that the large computation is composed of smaller ones.
After meditating on that idea for a while it's necessary to see many different examples of useful monads. The 'All About Monads' tutorial (probably the best monad tutorial) has a section which is all examples. You need to see as many examples as possible because you can't understand monads by looking at a single specimen.
Monads are an abstract generality which provides a similar structure to many different things that you would never have expected to have much in common. Without understanding that commonality, you're missing the point and monads will remain incomprehensible.