The student picking up indentation &#x27;automatically&#x27; is a great example of pain being an extremely useful teacher.  The pain of getting lost in one&#x27;s own code leads to a desire to become more organized.<p>Programming a system adheres to an oral history tradition, where the First generation has suffered the pain of some attribute (henceforth X) of their system. So they build a certain path around it.<p>The second generation (like the student in the article) is told why attribute X is avoided as a rule, however without the first-hand experience of the pain from attribute X&#x27;s characteristics meaning is lost.<p>Finally the third generation is told to avoid X, and can&#x27;t really explain why anymore.