[OPINION] Is Knuth’s "The Art of Computer Programming" a good book for a basic/intermediate programmer?

etienne_marais

Honorary Master
Joined
Mar 16, 2008
Messages
16,561
Reaction score
20,087
Location
Centurion
Is Knuth’s "The Art of Computer Programming" a good book for a basic/intermediate programmer?

No no no no noooo…. that’s a big NO with all caps.

Anyone who tells you otherwise has either:

  1. Not even attempted reading the book themselves.
  2. Has forgotten what it’s like to be a beginner, which is usually what happens when professionals recommend advanced books to a beginner.
First of all, TAOCP is not an introduction to programming book, so the reader must have prior programming experience. Secondly, it is not an introduction to algorithms book, so the reader must have an understanding of common algorithms and data structures.

Donald Knuth lists the prerequisites on the first page of volume 1 in a rather… vague fashion. Essentially, he wants you to understand how the digital computer works, this is because Knuth chooses to program in assembly language which requires knowledge of digital systems and a bit of computer architecture to truly appreciate.

In my opinion, you should also be comfortable with the material taught in CLRS. This is a classic algorithms textbook and will set the standard for how difficult the problems in TAOCP are in a much lighter way.


Lastly, it is suggested by many to read Knuth’s previous work, ‘Concrete Mathematics’ which is a summary of the maths used throughout his career and in TAOCP. This book further requires understanding of discrete mathematics and calculus…

https://www.quora.com/Is-Knuth-s-Th...good-book-for-a-basic-intermediate-programmer

There is a reason why this book is so infamous…


gates.png
 
etienne_marais god-awful Quora link said:
Is Knuth’s "The Art of Computer Programming" a good book for a basic/intermediate programmer?

No no no no noooo…. that’s a big NO with all caps.

Anyone who tells you otherwise has either:

Not even attempted reading the book themselves.

Has forgotten what it’s like to be a beginner, which is usually what happens when professionals recommend advanced books to a beginner.

First of all, TAOCP is not an introduction to programming book, so the reader must have prior programming experience. Secondly, it is not an introduction to algorithms book, so the reader must have an understanding of common algorithms and data structures.

Donald Knuth lists the prerequisites on the first page of volume 1 in a rather… vague fashion. Essentially, he wants you to understand how the digital computer works, this is because Knuth chooses to program in assembly language which requires knowledge of digital systems and a bit of computer architecture to truly appreciate

In my opinion, you should also be comfortable with the material taught in CLRS. This is a classic algorithms textbook and will set the standard for how difficult the problems in TAOCP are in a much lighter way.

Lastly, it is suggested by many to read Knuth’s previous work, ‘Concrete Mathematics’ which is a summary of the maths used throughout his career and in TAOCP. This book further requires understanding of discrete mathematics and calculus…

https://www.quora.com/Is-Knuth-s-Th...good-book-for-a-basic-intermediate-programmer

There is a reason why this book is so infamous…
 
Last edited:
I'd say its an intermediate / advanced book - if you're doing a CompSci. degree, will be helpful.

They aren't necessarily easy topics, nor are all of them relevant today, but if you are into pure CompSci, its worth the read, and the work.
 
Top
Sign up to the MyBroadband newsletter
X