4 of 4 people found the following review helpful
Proper perspective to appreciate,
This review is from: The Art of Computer Programming Boxed Set (Volumes 1-3) (Hardcover)Our consumer society provides us with many choices, and it's considered an insult to have less than a dozen different products from which to pick. This text is not a supermarket item with a *best before date*. It does not exist to provide you with plug-in code for your homework assignment. It's not to compared to the latest *** for Dummies publication. What is it then? It is meant to be a scientific document explaining ideas basic to CS from the ground up, and I would add, in the same class as Euclid, or Newton. How many people alive today have read the major works by either author. I don't mean have they taken courses in mathematics - I mean the actual *translated* documents. Easy access to some of these famous works, and from many other authors, was recently annotated by Stephen Hawking called *God Created the Integers*. Try reading those chapters and see how much you understand. Many of these papers are hundreds of years old, ideas that we've lived with for a very long time, but how many of us have understood the depth of rigor that went into developing the foundation of modern mathematics.
Every age is under the impression that their's is the enlightened one, that knowledge is somehow easier to grasp because we are somehow *smarter* than our ancestors - we want to be able to buy a book and deem it very good if we can learn without effort - take a pill and flash the pages and absorb the ideas through our fingertips.
We go to college and university to learn how to learn and how to think. We learn the process of thinking, and understanding the fundamentals of logical deduction and proof is not only in the realm of mathematics but of life experience in general: law, philosophy, physics, consciousness; all require the same insight.
If you don't care how a computer works and just want to access a high level function call or object to do all the work, then you are a consumer of someone else's product. But if you are toolmaker, and believe that every program you write deserves to be a well crafted thing, then you are also an artist. If this idea is foreign to you, then you should pass on these books and buy a *cookbook* from someone else.
The perfect example that categorizes programmers is the willingness or suspicion to use the built-in random number generator available in any given language-specific math library. You are putting application and your reputation on the line by taking for granted that every library function was well-designed and perfect, but if the writers of libraries also took for granted their tools to the same degree as you, then perhaps it will all come crashing down like a house of cards.
Is this book for you - 99% of you will say no. For the 1% that are left and wish to build the tools the other 99% will use, yes this book is for you. This is why open-source software, particularly for systems, compilers, and libraries is so important. Getting a look under the hood separates the magic from the science, and we need to know the details to avoid falling back into the dark ages.