I am not into old books on computers the way Graydon seems to be, but I still feel sad that the current generation of programmers will most likely never get exposed to some of the great books on computer programming that I was able to read when I was young.
At least here in Bangalore, it is almost impossible to buy these books from a bookshop unless they have either retained very old stock or are selling second-hand books. For example, here are a few books that seem to be very difficult to buy these days in Bangalore:
- "The Elements of Programming Style", Brian Kernighan and P. J. Plauger.
- "Algorithms + Data Structures = Programs", Niklaus Wirth.
- "A Discipline of Programming", Edsger Dijkstra.
- "The Science of Programming", David Gries.
- "Communicating Sequential Processes", C. A. R. Hoare.
- "How to Solve it by Computer", R. G. Dromey.
- "Microprocessors: A Programmer's View", Robert B. K. Dewar and Matthew Smosna.
Of these, I have only been able to buy Dromey's book so far. In my opinion, it is one of the most under-appreciated books in computer science and deserves to be read by every novice programmer. It is a perfect complement to the usual textbooks for a Data Structures and Algorithms course.
A kind soul has scanned in the pages from "A Discipline of Programming" and made them freely available to everyone. The electronic version of "Communicating Sequential Processes" is now freely available for download. But I still wish I had these books "for real".
By the way, Robert Dewar hopes to produce an updated version of "Microprocessors: A Programmer's View" sometime soon.
Alarmingly, some relatively recent books are also becoming difficult to find these days. For example:
- "Programming Pearls", Jon Bentley.
- "The Practice of Programming", Brian Kernighan and Rob Pike.
Thankfully, the "The Art of Computer Programming" (TAOCP) series by Donald Knuth is still easily available. "Structure and Interpretation of Computer Programs" (SICP) by Harold Abelson, Gerald Jay Sussman and Julie Sussman is also visible in bookshops from time to time.
I think the strong sales of TAOCP are more due to the "classic book" effect than anything else. To quote Mark Twain, "A classic is a book that everyone wants to have read but no one wants to read". If there are people who have actually read TAOCP, they seem to have been rather successful at avoiding to meet me. To quote Bill Gates, "If you have read The Art of Computer Programming from cover to cover, send me your resume!".