Why old programming books are better
I recently came to the conclusion that old programming books are better than new ones. This will be preposterous to some and, I suspect, obvious to others.
Old books are better because those that remain in the public consciousness are certified classics. They have withstood the tests of time, remaining relevant, which means they must have value of some kind.
This value is two-fold. They either provide technical knowledge that has remained timeless or they provide valuable historical context, and the outdated technical knowledge can be overlooked.
Historical context is not something that many people look for in programming books, but they should. Understanding the history of an idea helps us understand the idea in greater detail. Particularly, most of the history of computer science was driven by individuals who aimed to solve relevant problems within constraints. By understanding who these individuals were, the problems they were trying to solve, and the constraints they operated within, we are able to better understand the ideas and tools that were developed.
For example, I would highly recommend The Design and Evolution of C++ by Bjarne Stroustroup. This book teaches history, philosophy, language building, low-level programming, and effective design in the context of C++, covering why and how it was developed.
When you read old programming books, whether for technical know-how or historical facts, you begin to see that everyone involved was human. Everything in programming makes sense to humans because it was designed by humans. The pioneers who came before, although extremely talented, were humans like you or me, and this is a reassuring thought to remember.
I would recommend reading old books, especially for beginners. They provide context in a seemingly context-less world and help to make sense of the complexity of programming.
Are there any classic programming books you would recommend? Let me know in the comments.