This article is a follow up of the one I did about the the most recommended startup books of all-time.
If you've read this one recently. I guess y...
For further actions, you may consider blocking this person and/or reporting abuse
I always like to add "Dreaming in Code" by Scott Rosenberg.
In any case, I just added several more books to my list of things to read! Thanks for compiling this list.
(Side note: Not sure I'd take John Sonmez's or Robert Martin's word for anything, especially after some of the recent fallout.)
Dreaming in Code isn't really about the act of programming though. It's a chronicling of how a project, and business, failed.
But I do recommend it too. It's a really good and interesting read. And for the younger people it's also a nice dip in the history of software development in late 90s/early 2000.
Ah, but it is about programming, specifically how unpredictable programming is. It's helped me time and again with checking my assumptions and cognitive biases as a software developer.
In this case we should also mention The Phoenix Project ;)
Sorry, I must not have been in the loop somehow. What is this about?
Here's the best summary. (Read Ben's comment there; the bulk of information is there.)
Can we separate the artist from their art? Should we?
Andrew (he/him) ・ Oct 22 '19 ・ 1 min read
There's also this, which gives the entire timeline:
medium.com/@cherp/propaganda-other...
Despite that the two books Clean Code and Clean Coder are good books.
A long while ago Blaine reviewed Clean Architecture by Uncle Bob here on DEV. It apparently was not up to the same standard. In fact, not even good. That, and the twitter mess highlighted in the article you linked, and the crap articles on his website, is reason for me to have written off Uncle Bob.
I've even heard that Clean Code and Clean Coder have a dangerous mix of good and bad ideas, so they're only "good reads" if you already know enough about coding to sort the wheat from the chaff. I prefer to learn clean coding from anyone but Martin.
It has been a while since I read it. But I do not recall any dangerous ideas. There are a bunch of things in it I do not agree with. But that's common with most books. That's why you should read multiple books by various people on the same subjects so that you can form your mind on different perspectives. There is no single truth.
Clean Code does contain a disclaimer, although in a rather long form. Here's the most important bit of it.
Note, I didn't say there were "dangerous ideas", rather that the mix of good and bad ideas was dangerous. Slight difference in word order, major difference in meaning.
What I'm saying is, you can really only weigh the ideas in Martin's work if you're already well versed in software development. When you're at the "absorb knowledge like a sponge" stage, such a mixed bag is dangerous, because you don't yet have the ability to separate the wheat from the chaff. No book can ever be taken entirely at face value, but Martin's work is particularly inconsistent in its reliability, in part due to his inability to separate his opinion from objective fact.
D'oh, guess I wasn't fully awake yet ;)
I hear ya.
Slides a cup of hot coffee and a plate of donuts to Michiel.
Well :) Some of these books are really important for developers nowadays (e.g. first third part of "Clean Code").
On the other hand there is no practical sense in reading some others, e.g. "Structure and Interpretation of Computer Programs" or "Art of Computer Programming". Really many people recommend them, but very few really read. They use very specific languages for examples and cover many concepts nowadays either outdated or unnecessary. They were hits decades ago, but now more of historical interest, and, being quite tough, would be real waste of time, moreover that what is useful in them is mainly covered in other, more modern books.
The same may be told about most books on algorithms. I really like algorithms (they are my passion), but unless one is looking for CS degree and scientific work, one needs only shallow understanding of time/space complexity nowadays and brief acquaintance with most popular data structures and sort methods. Both of those aren't usually needed for practical tasks in industry (especially in frontend / webdev), but could be easily asked at interviews.
This pretty much sums up 90% of the "best books to read" listicles I've come across.
Don't waste your time reading a book if all you're going to do is tell others that you read said book.
I always have a hard time making reviews or the opinion of the collective the main measure of quality. As in, I don't care about votes, I care about a good review with arguments on why something is good or something is not that good.
Even when a book is not read that often, it doesn't mean it's a book of less quality or less important information.
I discovered some books, that are most well worth reading for developers and many people will never find them, because these don't appear on lists like these.
For example:
Yes, both by Gerald Weinberg, but he has written more quality books than Fowler and Martin together.
Another great author is Juval Löwy for which I would recommend all his books. Especially his latest:
I would not be surprised if the latter will be hitting the next top 25 list.
Adding some of these to my Goodreads. Have you considered making a shared list on there? Makes it easy to add to your Want to Read list 👍
I have read a handful of these, I'm in the middle of Code Complete. Pragmatic Programmer was already on my list at the recommendation from a friend as well.
I would also like to promote this tiny book. It provides many real world examples of computer programming by devs that were engaged in tech leading companies. Furthermore it provides insights you can‘t learn from theoretic approached books/sources.
shop.oreilly.com/product/978059680...
I have a handful off of this list. Cracking the Coding Interview is obviously great for trying to get a handle on those kinds of questions. The Pragmatic Programmer has been a great read so far!
My copy of "Don't Make Me Think" arrived today and I'm excited to get started with it.
I'm reading Code Complete by Steve McConnell and I have to say it's pretty good. It covers OOP concepts that I haven't be able to understand until now and even though I'm a JavaScript developer I'm glad that I now understand the basics of OOP.
I'm surprised that The Phoenix Project isn't on here - maybe still too early?
Thanks for providing the list!
Great list. I’d also recommend:
Growing Object-Oriented Software Guided by Tests by Freeman and Pryce
Pragmatic Programmer is amazing o/
Great list.
Awesome work!
I'd definitely recommend The Pragmatic Programmer to anyone who hasn't read it. The first technical book I read, and still my favourite.
Thank you, will do it asap :)
Just wanted to point out a typo in the conclusion:
Also, thanks for the wonderful collection!
Nice list. I can't just believe you did not include "Smalltalk Best Practice Patterns" from Kent Beck. It's an incredible book and it does not apply only to Smalltalk. I can only recommend this to everyone.
Thank you !
Didn't Robert C. Martin wrote 2 books of the list ? So he would be the third author after Marting Fowler and Steve McConnell to have multiple books no ?
You are correct.
I missed it!
Corrected now.
I feel like I just walked through the Computer Programming section of Powells Books
I really like this list, Id like to add Category Theory for Programmers as a really good book for programmers. It also has an accompanying lecture series on youtube. I think most programmers will put Category Theory in the functional paradigm box but I found learning and understanding mathematical concepts like Group and Category theory is better understood as understanding abstraction and I found it really helped all my coding OOP and Functional.
Well.. it always a much easier to work with the devs and their code who actually read at least clean code and pragmatic programming or at least knows what is the message there.
"Getting Real" is also a fantastic read.
i feel such an idiot now :( ive only read 'dont make me think'
Can I tell you a secret? I did not even know about the first one.
Thank you for the post! I'll read some of them and probably contribute here at deve.to after I improve myself with these delicious books xD
I created a website for this purpose. You can check at techread.dev
Great list.
May I summarize and introduce in Japanese?
any links in japanese ?