Jiri Novotny recently published his list of 30 books everyone in the software business should read. A friend linked it on Facebook and asked us what we thought.
I wasn't impressed because there aren't enough software books in the list and some of the books seem trendy or interchangeable with better titles. Jiri lists some excellent books, and I have many of them, but it seems wrong to call out these 30 as special. (My bias towards technical founders surely doesn't help my opinion.) So now I'm on the hook to come up with a top 30 list of my own. Oops.
The Internet is chock full of good reading lists. For example:
- The first and second highest rated questions on Stack Overflow are about books.
- Jeff Atwood of Coding Horror and Stack Overflow fame has a recommended reading list.
- Clojure creator Rich Hickey published a list of influential books that helped shape Clojure.
- Hacker News not only has recurring discussions about books, but actually recommends books in the site's footer.
The trouble is a top N list of books doesn't make any sense. It's better to see a book as a very personal, very non-interactive conversation with an author. You don't inject a book and reify the ideas in your neurons. One book may be absolutely top in a subject, but if you have trouble understanding the author, or you're not ready for the ideas, you must try other books.
A top N book list only makes sense as a proxy for a top M idea list.
That's too much work for this post, so I'm compromising by tracing some influential books in my life and what ideas I took from them. The specific books will be different for you—perhaps you fell in love with software through the Internet rather than a home computer—even if the ideas are the same.
Love and discovery of software | |
I have power! Understanding the machine, Static typing, Imperative languages | |
Good taste (My code is shit!) | |
Reading code, Finding community (Dr. Dobb's and BYTE in the pre-Internet) | |
Intellectual play | |
Dynamic typing, Objects, GC, VMs, Domain languages | |
REPL, Functional languages, Unification, Back-propagation | |
Networks, Distributed computing, Processes, Memory, Security | |
Software design | |
Actors, Macros, MOP, Type systems | |
Algorithms | |
Human interfaces, Usability, Cutting corners | |
Intellectual honesty |
That's 22 books covering a large swath of ideas. I'd swap out books if I were learning for the first time: Erlang instead of Hermes, Ruby instead of Smalltalk and Clojure instead of Scheme are easy swaps. Nobody needs "C Chest" anymore—the Internet has changed everything. Also, given the complexity of modern multi-core hardware, it may be better to skip hardware and imperative languages (and imperative OO languages) to make more room for topics such as lazy evaluation and software transactional memory.
With so many important ideas missing from the list, it's going to be a challenge to choose just 8 more books. Here are my choices in case anyone wants to help:
Really very nice blog information for this one and more technical skills are improve,i like that kind of post.
ReplyDeleteSAP training in Chennai
ReplyDeleteAll are saying the same thing repeatedly, but in your blog I had a chance to get some useful and unique information, I love your writing style very much, I would like to suggest your blog in my dude circle, so keep on updates.
SAP training in Chennai
Great Article I love to read your articles because your writing style is too good, its is very very helpful for all of us and I never get bored while reading your article because it becomes more and more interesting from the starting lines until the end. So Thank you for sharing a COOL Meaningful stuff with us Keep it up..!
ReplyDeleteSAP training in Chennai
I must thank you for the efforts you have put in penning this site. I am hoping to check out the same high-grade content by you later on as well. In truth, your creative writing abilities has inspired me to get my own, personal blog now..
ReplyDeleteCorporate Training in Chennai
Thank you for your post. This was really an appreciating one. You done a good job. Keep on blogging like this unique information with us.
ReplyDeleteBranding Services in Chennai
great collection
ReplyDeleteBest Selenium Training Center in Chennai | Best Automation Testing Training in Chennai | Best selenium training and placement in chennai | Selenium Training in velachery
Very Good article. I like to read your blogs frequently.
ReplyDeleteHere is the booming framework Best AngularJS Training in Chennai
Thank You for sharing your article, This is an interesting & informative blog. It is very useful for the developer like me. Kindly keep blogging. Besides that Wisen has established as Best Corporate Training in Chennai .
ReplyDeleteNowadays JavaScript has tons of job opportunities on various vertical industry. Know more about JavaScript Framework Training visit Corporate Training Companies in India.
This post gives me detailed information about the technology. corporate training companies in india
Informative post, thanks for sharing.
ReplyDeleteAngularjs Training institute in Chennai
ReplyDeleteVery informative post. Looking for this information for a long time. Thanks for Sharing.
Tableau Training in Chennai
Tableau Course in Chennai
Tableau Certification in Chennai
Tableau Training Institutes in Chennai
Tableau Certification
Tableau Training
Tableau Course
ReplyDeleteThe blog which you have shared is more informative. Thanks for your information.
Best Institute for JAVA
Best JAVA Training
JAVA Programming Certification Course
Best JAVA Certification
Best JAVA Training
Excellent post! keep sharing such a post
ReplyDeletesecurityguardpedia
Guest posting sites
Great information!!! Thanks for your wonderful informative blog.
ReplyDeleteccna cerification course in coimbatore
ccna course coimbatore
ccna training institute in coimbatore
ccna training centers in coimbatore
best ccna training in coimbatore
ReplyDeleteAwesome Writing. Your way of expressing things is very interesting. I have become a fan of your writing. Pls keep on writing.
SAS Training in Chennai
SAS Course in Chennai
SAS Training Institutes in Chennai
SAS Institute in Chennai
SAS Training Chennai
SAS Training Institute in Chennai
SAS Courses in Chennai
SAS Training Center in Chennai
Thanks for the great post on your blog, it really gives me an insight on this topic.I must thank you for this informative ideas. I
ReplyDeletehope you will post again soon.
android application development course in bangalore
Android courses in Anna Nagar
Android Training courses near me
Android Training in chennai
The information given is extra-ordinary. Looking forward to read more . Thanks for sharing.
ReplyDeleteIELTS Coaching in Chennai
IELTS Training in Chennai
IELTS Centre in Chennai
IELTS Training
Ethical Hacking Course in Chennai
Hacking Course in Chennai
Primavera Training in Chennai
Primavera Course in Chennai
Very good to read the post
ReplyDeleteTableau training in chennai