Andrew Binstock interviews Donald Knuth

Posted by on in Blogs
Donald Knuth, author of the all-time best Computer Science book series (in my opinion), "The Art of Computer Programming", was recently interviewed by Andrew Binstock for  The interview is very indepth covering programming, methods, tools, history, architecture, and more.  I've listed a few of the interview highlights that caught my eye.

On unit testing: "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."

On sequential methods versus parallel techniques: "The field of combinatorial algorithms is so vast that I’ll be lucky to pack its sequential aspects into three or four physical volumes, and I don’t think the sequential methods are ever going to be unimportant. Conversely, the half-life of parallel techniques is very short, because hardware changes rapidly and each new machine needs a somewhat different approach." "I might as well flame a bit about my personal unhappiness with the current trend toward multicore architecture. To me, it looks more or less like the hardware designers have run out of ideas, and that they’re trying to pass the blame for the future demise of Moore’s Law to the software writers by giving us machines that work faster only on a few key benchmarks!"

Comparing literate programming to traditional techniques: "In my experience, software created with literate programming has turned out to be significantly better than software developed in more traditional ways."

On extreme programming: "With the caveat that there’s no reason anybody should care about the opinions of a computer scientist/mathematician like me regarding software development, let me just say that almost everything I’ve ever heard associated with the term extreme programming sounds like exactly the wrong way to go...with one exception. The exception is the idea of working in teams and reading each other’s code. That idea is crucial, and it might even mask out all the terrible aspects of extreme programming that alarm me."

It is a great interview with lots of insights and thought provoking answers. Thank you Andrew and Donald!

Gold User, Rank: 1, Points: 2466
David Intersimone (known to many as David I.) is a passionate and innovative software industry veteran-often referred to as a developer icon-who extols and educates the world on Embarcadero developer tools. He shares his visions as an active member of the industry speaking circuit and is tapped as an expert source by the media. He is a long-standing champion of architects, developers and database professionals and works to ensure that their needs are folded into Embarcadero's strategic product plans. David holds a bachelor's degree in computer science from California Polytechnic State University at San Luis Obispo, California.


Check out more tips and tricks in this development video: