When I was in college, as part of the general course requirements we had to take Probability and Statistics. The first time around I found it to be an impenetrable concept beyond my grasp, and I flunked. Since it was a requirement, I took it again and barely skated by. Joy; I had cleared the hurdle!

By that time, it had become clear to me that I was going into a field that required a whole lot more understanding of P&S than I had acquired. Since I wanted to be properly prepared, I signed up for a free summer school course to try it once more.

This time, the professor was a crotchety old German mathematician. He would not allow us to record the lectures. We were told not to bring the textbook to class as the turning of pages distracted him. We were not even allowed to take notes. Every class began with Good morning, Pencils Down! He firmly believed that you had not mastered a skill unless you could explain it in simple words to a complete neophyte, by merely describing it in non-technical terms that they already understood.

Based upon my prior two attempts at this subject, after two classes I was convinced that this was going to be a waste of time. After all, if I could barely understand it with the textbook and notes, what chance did I have like this? But I had already signed up and committed the time, so I stuck with it.

To my shock-surprise-awe, he managed to verbally paint a picture through which the concepts became crystal clear; not just to me, but to everyone in the class. I had no trouble acing all the homework assignments and tests, and my entire notebook for the course consisted of:

  Probability and Statistics MTH 203 - Summer 1977
  Textbook: ...
  Lecture recordings not allowed.
  Textbook not permitted in class.
  Notes not allowed.

The man was truly a master of his craft; arguably one of the very best teachers I ever had in my life. Unfortunately, they forced him to retire the following semester. Unable to teach, he was bored, lost his passion and died shortly thereafter.

From then on, I adopted his philosophy of The Master is in Simplicity and strived to incorporate it into everything I touched. If I couldn't just hand something that I had built to someone else with minimal explanation, then I had done something wrong and strived to fix it before moving on. Even in those cases where, for managerial/political/cow-orker reasons beyond my control, I was forced to implement something in an incredibly stupid way, I would at least break it up internally and follow the (by now, very old) rules:

  • one procedure should not extend beyond what you can see on the screen
  • classes should generally do one logical thing

Project mismanagement and ridiculous time constraints usually tested my resolve, but I promised myself early on that I would never turn in a project half-arsed for the sake of a deadline. If it wasn't done simply, then it wasn't done and not ready to be deployed. Period.

Sure, I've had to create some incredibly complex things to work around an assortment of WTF, but I always made sure that what and why were graphically documented (in both class- and block-level comments) out of simple respect for whomever came after me on the project.

Looking back on the forty years and all the projects since that time, I realized that I mostly stuck to that promise, thanks to the philosophy of that one teacher.

OTOH, I can't even count the projects I inherited that were so convoluted that it took longer to properly untangle the mess than it would have taken to rewrite the whole thing.

Have you ever had a teacher/mentor that shaped you in some profound way?

[Advertisement] Keep the plebs out of prod. Restrict NuGet feed privileges with ProGet. Learn more.