In a recent interview, Donald Knuth said:

As to your real question, the idea of immediate compilation and "unit tests" appeals to me only rarely, when I'm feeling my way in a totally unknown environment and need feedback about what works and what doesn't. Otherwise, lots of time is wasted on activities that I simply never need to perform or even think about. Nothing needs to be "mocked up."

I take it that Knuth means that he tests code at a significantly higher level than what he observes in general practice. While apparently fine for Knuth, this doesn't sound like good advice for all levels of programmers. ;)

Contrast that with Warren Buffett, where he pretty much just repeats introductory investment advice (although alternative through the lens of academia). Both have done amazing work in their respective domains, and given their works versus their interviews, I think the correct path lies in discounting what they say, and focusing on understanding what they've done.