Live data from Hacker News

Ask HN: Is Knuth's TAOCP worth the time and effort?

news.ycombinator.com

71–80 of 141 posts

Re: Ask HN: Is Knuth's TAOCP worth the time and effort?

#71
I liked it a lot. I read all three books but only did a small fraction of the exercises. I had read quite a few easier algorithms books, but had never seen a good treatment of less trendy things like external sorting algorithms or random number generators. I really like Knuth's writing. Of course the drawbacks are that the books don't have recent algorithms, and you have to deal with MIX assembly rather than your favorite language.

They are not easy books. At the time I read them, I had a 45-minute bus commute each way, which gave me a nice forced reading window. I don't know if I'd make it through them today, without public transportation. Too many more entertaining things to read or do at home.

Re: Ask HN: Is Knuth's TAOCP worth the time and effort?

#72
post #28
post #11

pipeline stalls, designing for cache performance, branch prediction, multithreading, etc. Those are issues for a subset of computer hardware. Embedded computing is still huge and has drastically different performance requirements. TAOCP is designed to stand the test of time, not focus on micro-optimizations that generally have limited performance impact and are a waste of time 99% of the time.

> Embedded computing is still huge and has drastically different performance requirements Even chips as small Cortex-M4 has a write buffer, 3-stage pipeline and branch speculation. And real embedded computing is more and more utilizing hardware similar to desktop/mobile/server. You can't run self-driving car / neural networks / image processing on a single threaded CPU with no cache or branch prediction.

You can't run the car on it, but many subsystems in any car, automatic or not, can and will run on that sort of machine.

Re: Ask HN: Is Knuth's TAOCP worth the time and effort?

#73
post #56

Earlier quoted context omitted.

It would really help if you could list some specific ways that the theory of computation has changed since the writing of TAOCP, and some evidence for why you think that theoretical CS is changing faster than can be documented.

TAOCP has not been written, several volumes of it have. It remains to be seen whether Knuth will even be able to finish what he set out to do, let alone include new things. > faster than can be documented. By one person , I wrote. Here's one that I think is interesting, difficult and evolving: distributed systems. This shows interesting work happening with version vectors, for instance, over the past 15 years: https:…

No need to worry about that one. Looking at Wikipedia's list of volume's, looks like distributed systems are not being covered. But I agree with you anyway. Let's quote the man himself (taken from his website): "As I continue to write Volumes 4 and 5, I'll need to refer to topics that belong logically in Volumes 1--3 but weren't invented yet when I wrote those books". He plans to complete Volume 5 by 2025. Tune in ten years from now to see how it goes.

Re: Ask HN: Is Knuth's TAOCP worth the time and effort?

#75

Do you need to people to tell you what to do? Asking other's advice is as stupid as judging a book by its cover. If you have studied a tad, or read books in the past, there are ways to efficiently evaluate a book: Read some pages randomly. Think 30s if you liked it. TAOCP is indigest for sure. Then take a topic for which its relevant. Read it. Did you learnt something? A) no, either you or him is an idiot. Go to B) B…

> Do you need to people to tell you what to do?

No but if I want advice on building a wall and I'm not a builder I might ask one.

If I want advice on how to make bread I'd ask a baker.

There is nothing wrong with asking more knowledgeable people for advice, in fact the inverse, I've learnt skills in my life the brute force way by trial and error where just been able to ask someone who'd done it for advice would have saved me a whole bunch of time.

Re: Ask HN: Is Knuth's TAOCP worth the time and effort?

#76
post #46
post #11

pipeline stalls, designing for cache performance, branch prediction, multithreading, etc. Those are issues for a subset of computer hardware. Embedded computing is still huge and has drastically different performance requirements. TAOCP is designed to stand the test of time, not focus on micro-optimizations that generally have limited performance impact and are a waste of time 99% of the time.

> TAOCP is designed to stand the test of time, not focus on micro-optimizations . . . Hmmm. My edition of "Sorting and Searching" has a section devoted to tape-sorting.

The idea is that if you fully understand the analysis as it applies to tape-sorting, you'll be able to perform a similar analysis as sorting applies to different problem domains yourself.

The point isn't learning the answer; it's learning how to get to the answer.

Re: Ask HN: Is Knuth's TAOCP worth the time and effort?

#77
post #70
post #42

Earlier quoted context omitted.

Look at Knuth's future book plans, and consider all the things he's not putting in them that are current. He's also revisited the books some, and plans to do so again in the future. I don't mean to take away from the books - they're beautiful and full of a lot of timeless knowledge. There's just something that seems a bit ... I can't even find a word for it ... about the endeavor.

I believe the word you're looking for is sisyphean, and I actually don't agree. You've yet to make the case that the fundamentals of computing science are changing so much that documenting them is not a worthy task. Again, basic algorithms and data structures simply have not changed. Their performance characteristics, methods for optimal implementation, etc, certainly have as computer architectures have evolved (thin…

you are very correct. I've spent the last 7 years in bioinformatics doing algorithm development and it's almost entirely specialized versions of existing and established algos from decades ago.

Re: Ask HN: Is Knuth's TAOCP worth the time and effort?

#78
My company bought the books for me. Everyone was able to order books for the value of around 100 euros, and I ordered TAOCP because it is almost timeless and it will be valid for long time. I never buy programming books (books like "learn XYZ in XYZ days") in paper because they get outdated so fast, but getting TAOCP practically for free, I did not give it a second thought..

Re: Ask HN: Is Knuth's TAOCP worth the time and effort?

#79
post #31

Earlier quoted context omitted.

> "It's a pleasure to meet you, Professor Knuth," Steve [Jobs] said. "I've read all of your books." > "You're full of shit," Knuth responded. ( http://www.folklore.org/StoryView.py?story=Close_Encounters_... ) Yes, now we know that this never happened, but I like to think it did.

He could respond that way to everyone. In every full set of TAOCP, there is a sentence that reads "If you have read this far, mail this string to the author to collect $25." The sentence is followed by a 10 character alphanumeric string. The string and placement of this sentence is randomized: different in every set. To this day only 3 people have collected their checks. All three have them framed on their walls.

I'm skeptical. I read the first 3 volumes nearly 20 years ago, skipping only a couple of the most laborious mathy sections and don't recall seeing this.

Re: Ask HN: Is Knuth's TAOCP worth the time and effort?

#80

Donald Knuth is actually a great writer and teacher. Try Concrete Mathematics instead of TAOCP, it is a shorter and easier introduction: http://amzn.com/0201558025 . It is humorous and it includes notes from past students in the margin. I really enjoyed it. Shameless plug: I wrote an illustrated book on algorithms that aims to be an easier read than TAOCP, CLRS and others: http://amzn.com/1617292230 .

Not available yet.
Post reply on HN