I have used Mathematic since day one, back when I was a PhD student in the 1980's. Seminal was the lecture I attended by Roman Maeder at the ETH, learning how to program one's own symbolic mathematics interpreter in Lisp. After that I read and worked through "Structure and Interpretation of Computer Programs", and was hooked to the idea. I have programmed many hundreds of thousands of lines of Mathematica code, but now, as a senior faculty member with a large group, I have gotten rusty since there is only time for half-a-page code segments these days.