I made this earclipping visualizer that visually demonstrates how the technique works and provides a minimal (~70 lines with comments) implementation.
The "stepping through the algorithm" is done by way of a generator; I simply "yield" after each interesting bit of progress.