Hacker News new | ask | show | jobs
by jamestimmins 984 days ago
Knuth's work is the computer science version of "industry-specific canon that few people have actually read", much like The Powerbroker in urban planning.

I own several of his books (admittedly they were gifts), and have never read them. So them not showing up in the top five doesn't surprise me much.

3 comments

For many people it's more of a reference book, not to be read cover to cover. Reminds me of this bit from a corecurisve interview with Richard Hipp:

https://corecursive.com/066-sqlite-with-richard-hipp/

Richard: You just pick things up. People tell you these things, and that happened to some with Bloomberg. They’d come to us and say, “Hey, why aren’t you doing this optimization,” and I said “Never occurred to me.” “Well, can you do it?” “Let’s see what we can do,” and then it would go in, so, yeah, kind of figure it out as you went along. I had to invent a lot of this myself. Nobody ever taught me about a B tree. I had heard of it. When I went to write my own B tree, on the bookshelf behind me, I’ve got Don Knuth’s The Art of Computer Programming, so I just pulled that down, I flipped to the chapter on searching and looked up B trees and he described the algorithm. That’s what I did.

Funny thing, Don gives us details on the algorithm for searching a B tree and for inserting into a B tree. He does not provide an algorithm for deleting from the B tree. That’s an exercise at the end of the chapter, so before I wrote my own B tree I had to solve the exercise at the end. Thanks, Don. I really appreciate it.

Adam: That’s awesome. Did you pull anything else from that book?

Richard: Well, it’s an amazing volume. I can’t give you a specific example, but from my era, everybody has to have read or at least skimmed through, at least browsed through The Art of Computer Programming, and know that algorithms that are there, maybe not Don’s exact implementation. I mean, I never took the time to learn MIX, which is his assembly language, but it’s useful to flip through and look at all the algorithms he talks about. I think that just a year or two ago I needed a pseudorandom number generator, and I was, “Let’s see what Don recommends.” You pull it off. You see what he does.

It’s massively overrated too. It’s a detailed handbook on the engineering problems of it’s time (sorting, parsing, …) which have all been ‘solved’ since.
I don't think Knuth's work is canon in our specific industry, be it web dev, system dev, or whatever it is people around here are doing. Knuth belongs to Academia, not industry.
I am sorry that you feel this way. Software Engineering and Computer Science are thoroughly academic topics that every practicing IC and manager can greatly benefit from reading and digesting. Bill Gates put as an endorsement of TAOCP that he would hire (in industry) anyone who mastered the topics therein. Did you not go to university? Even if you didn't, where was the source of your education? Knuth wrote books that could belong to undergraduate level programming courses.
I have read a few chapters of TAOCP for fun but I have a PhD in Mathematics, and worked in Academia, so I am an outlier. I don't think Knuth's book are a difficult read - for me. But unlike you I don't make the mistake of believing everyone is as proficient as I am. I don't know a single person, among my friends and acquaintances working in SWE, that could read a page of TAOCP.
I mean Microsoft hires any college grad that can solve medium leetcodes, its not like it’s a huge endorsement.