Literate Programming
mooism2: I like it in theory, but I'm no good at it in practice.  But then I am no good at commenting in general.  One of the reasons I am trying literate programming is that I hope it will prod me to explain my code more.  So far I only seem to use more headings to break up my code, but this is still an improvement.