The Most Mentioned Books On StackOverflow (dev-books.com)
An anonymous reader writes: People over at DevBooks have analyzed more than four million questions and answers on StackOverflow to list the top of the most mentioned books. You can check out the list for yourself here, but here are the top 10 books: Working Effectively with Legacy Code by Michael C Feathers; Design Patterns by Ralph Johnson, Erich Gamma, John Vlissides, and Richard Helm; Clean Code by Robert C. Martin; Java concurrency in practice by Brian Goetz, and Tim Peierls; Domain-driven Design by Eric Evans; JavaScript by Douglas Crockford; Patterns of Enterprise Application Architecture by Martin Fowler; Code Complete by Steve McConnell; Refactoring by Martin Fowler, and Kent Beck; Head First Design Patterns by Eric Freeman, Elisabeth Freeman, Kathy Sierra, and Bert Bates.
A best seller!
I'm C, C++, embedded code, device drivers. If you ignore books like the Microsoft build engine (I don't do Windows) I've got probably 90% of those dealing with my problem domain.
Granted, most of these are not the current editions (haven't bought a book in over 10 years now), but I've got em.
No love for TAoCP?
If I'm unfamiliar with a subject, I'll read a Dummies book. Sometimes I'll read an Idiot book. Both are excellent resources for diving into a new subject.
I didn't get Design Patterns. It was still unclear on when to use what, and why. Many of the alleged limitations of the alternatives are language-specific. Sure, Java sucks at some things, C++ at others, etc. The real issues in comparing among design choices are subtle and complex.
Table-ized A.I.
The Stevens Networking book is still up on the list, I'm very glad.
I remember a story about him and his kid. They went to go to Wayne's World 2, and in the movie they show his book. His son, "dad you're so cool, that's your book". Yes, you were cool. RIP....
The web wasn't a thing in 93. The Internet was definitely a thing,
simtel. wuarchive. sumex-aim. sunsite. All the big ftp sites, and searches were Archie. That and netnews. alt.barney.dinosaur.die.die.die
It did make it, just not into the top 10.
It's number 11.
Back then you could buy the Internet Yellow Pages at the bookstore to find everything on the Internet.
https://www.amazon.com/Internet-Yellow-Pages-3rd/dp/0078821827/
One thing I didn't see on the list but I consider a must-read book for any programmer, is The Design and Evolution of C++. It helps if you've worked with C++ but is not a requirement; the book is really good more because you learn how a programming language comes to be, and the thought that goes into how it works.
If you dislike some parts of C++ you will find fun supporting material here also... but really it's a great way to help you see all programming languages form the other side.
On a side note if you do like this you may want to look sometime into some of the Swift commonly rejected changes document, that gives you insight into a modern programming language as it forms. An amusing aspect is that it used to be called the "Commonly Proposed" document, as you can tell from the URL and file name...
"There is more worth loving than we have strength to love." - Brian Jay Stanley
The hell do you need all of them for?
To broaden your skillset? To be more effective at what you do? To write more maintainable code? To make fewer errors? To interact with your peers? More specific to C++ and those particular books, to prevent race conditions, to have strong error handling, and to make more efficient use of multiple core processors? Perhaps most importantly, so that when the company hires a snot-nosed kid who actually does know and practice these things, that he won't show you up as the fossil you're describing yourself as?
I've been programming since 1976, and I think it's fair to say that computers have changed since then. If you think that programming now is anything like programming 20 years ago, you haven't been paying nearly enough attention.
John
All the big ftp sites, and searches were Archie.
Gopher, you heathen. Now go jump in a volcano.
John