I am sure this is controversial, but how many people have actually read these books? It's unfortunate because they are held in high regard, but the impact seems reduced for what it could be. I definitely could be wrong. I would love to at least peruse through them, but they seems to be hard to find as a full set at a decent price.
> they seems to be hard to find as a full set at a decent price
All of Knuth's work on TAOCP since Volume 3 (basically everything that he's written for 4A and 4B, starting over a decade ago) is essentially available for free online, in the form of preliminary drafts that Knuth put up online. You can find them nicely collected here: http://www.cs.utsa.edu/~wagner/knuth/ Of course the pleasure of holding a beautiful hardcover book in your hand is missing, but all the content is mostly there.
To answer your earlier question, not many people have read all the books in their entirety, though there are a few. This is simply because the books go very deep on their topics, and most people would prefer to just dip in.
I read a few pages of one of the recent fascicles a while ago, doing all the exercises etc. It was a lot of fun, and also took about a month to read about a dozen pages. But the experience was rewarding (also got a check from Knuth!), and the writing in TAOCP was easier to understand than it would have been to read the original papers that he had digested. (Comment about this a few months ago: https://news.ycombinator.com/item?id=15035767)
I don't "read" "them", but I dive into sections haphazardly and read them for pleasure; they're invariably rewarding. Like a textbook, you can (and probably should) build a syllabus out of parts of the books, rather than plowing through them in a straight line.
You almost certainly already know this, but this is a good place to mention it for those who might not: when reading these books for pleasure or personal interest, as opposed to just trying to get an answer to "I need to do X...what should I do?", don't overlook earlier editions.
These books are not like too many textbooks today, where new editions are largely minor tweaks and maybe some changed exercises in order to make it harder for students to get by with used copies from prior years.
With Knuth, a new edition means there have been many very significant changes. Whole new algorithms are added, and older ones are dropped.
For example, the section on arbitrary precision integer multiplication in Volume II underwent major changes from 1st to 2nd edition, and even bigger changes from 2nd to 3rd edition.
If you just need to implement arbitrary precision multiplication, 3rd edition is for you. But if arbitrary precision multiplication is something that is interesting enough to you that you are actually studying it for fun, you'll probably want all three editions of Volume II.
Additionally, the difficulty points on some problems changed as new proofs were discovered. In particular, Fermat's last theorem went from M50 (math required, Research problem) to HM45 (Higher math required, more than a team project but less than a Research problem).
Additionally, somewhere along the way, the marvelous tape sorting fold out pages have dissappeared from the Sorting and Searching volume.
I don't remember that particular one, but there are odd bits of humor throughout his work. "MIX is the world's first polyunsaturated computer."
Browsing through it again, I see a reference in section 1.2.8 about Fibonacci numbers, problem 37 references a paper by R. E. Gaskell and M. J. Whinihan. I worked with Mike Whinihan in a previous lifetime. He got his PhD in economics at U of Chicago in just three years, to the dismay of his classmates. He wrote that paper "Fibonacci Nim" when he was in High School. And looking at the beginning of Chapter 2 "Information Structures" he mentions structures in "algebraic language like FORTRAN, C, or Java" (third edition). In the first edition, neither C nor Java had yet been invented.
In the book Coders at Work, Peter Seibel asked a number of famous programmers, including Knuth, if they had read all of TAoCP. Only one said that he had. Knuth, likely with tongue in cheek, said that he had not. But of course, he wrote it, so apparently he is not counting that.
I have read some sections in great detail, e.g., the section on multi-precision arithmetic. This was essential for writing floating point libraries.
The multiple-precision arithmetic section of mine is easily found by looking at the colour on the edge of those pages. There is no better treatment of this subject out there.
On page 189 of Volume 2 (Third edition) there are two paragraphs discussing previous literature, including bibliographies. I do recall prior to the publication of Vol 2 that there were numerous ACM articles discussing this topic.
But Knuth's exposition is certainly comprehensive compared to anything else.
Just my own opinion reading all of these books would be less useful than picking particular interesting sections and both reading and doing the exercises.
I did actually read all three of the first ones, and attempted (at least) almost all of the exercises. It took me about three years. I enjoyed it, but I will say that the _practical_ benefit of reading through all of these books is questionable; it's more like climbing mount everest and looking down from the top, saying, "wow, I really did it". I did come across a set of all three cheap at a used book store - I don't think I could ever have justified paying full price for the set. The only part I sort of skimmed over was section 5.4 in volume 3 that covers the algorithms for using banks of external tape drives to sort more data than you can fit in memory (taking into account the time taken for the tapes to get up to full speed and whether or not the tape drives support backwards reading). Fascinating stuff, but I couldn't motivate myself to expend as much effort into trying to work the exercises as I did with the rest of the series. Still, reading through TAOCP is quite an experience - if anything, it's a good reality check if you were ever thinking you were about as smart as a person could be.
It's not controversial just a naive juxtaposition of computer science and what most of us do which is yeoman programming. Do people work through Calculus textbooks? Are textbooks a reasonable price? These are low volume prints; it takes a lot of people to publish and run a press printing of a book.
I keep meaning to buy a set, but they are so dang expensive.
Though, I'll admit I have purchased several 'classic' CS books over the years that have been sitting on my bookshelf, unread, for an embarrasingly long period of time.
I have the full set, but sadly I’ve just never bothered to do more than skim a few pages.
At one point I thought, maybe if I read just one page a day I can digest I’ll eventually finish it all some day, but sadly it will take more commitment than that.
Also, I’m not really sure what the benefit will be in the end or what difference it will make to my life.
Yes, but the advantage other books have is more people have read them and given their reviews on how it has helped them.
So few people have read TAOCP that there's not really much information out there about how it benefits them, if at all. The problem with books that go very deep into niche topics is you might never find something that relates to that topic in your actual life in some meaningful way.
Well, that's because our banking system is terrible and because showing off a knuth check is worth more than cashing it, people shared pictures of said checks which allowed check fraud.
I attended one of his talks (but not the ones you mention), during which he described how he was approaching the topic. He said he was reading the most important papers on sat problems in chronological order, and implementing each of the algorithms he found along the way. At the time of the talk, he was half-way through the ‘80s, IIRC.
A lesson in commitment and perseverance for me. And a very funny talk as well (Knuth likes jokes!)
knuth only touches on the condensed matter (survey, beliefprop) in like one section in the whole book, i recall. beautiful presentation, nothing about, say, the d1RSB and s1RSB transition or anything like that. try montanari's book