A riff on Gustavo Duarte's blog post about using better motivated examples to visualize recursion.
This IPython Notebook uses the same example - traversing a maze (representing as a binary tree) - and contrasts it with the recursive and iterative versions of factorial. The main difference is that it is done here in Python, whereas the original version is in C.