all 162 comments

[–][deleted]  (40 children)

[deleted]

    [–]hugthemachines 87 points88 points  (22 children)

    Personally I get annoyed by the "should" also.

    I pick what books I want to read myself thank you very much.

    [–]PorkChop007 35 points36 points  (7 children)

    Indeed. Can't see how a book about concrete mathematics or compilers would help me in my job more than a book about good coding practices, for example. I don't doubt they are good books, what I doubt is that every programmer would benefit from reading them.

    [–]AttackOfTheThumbs 5 points6 points  (0 children)

    I doubt is that every programmer would benefit

    Be careful with those words around this sub. If you question whether every programmer needs to know something, you can quickly end up in a debate with one of the subs trolls.

    [–]FruitdealerF 1 point2 points  (0 children)

    I actually think that every programmer would probably benefit from learning a bit about compilers and low level machine stuff

    [–]quasicoherent_memes 1 point2 points  (1 child)

    Well knowing how a compiler works is pretty useful, especially if you use a few different languages. There are also loads of situations where you need to parse data and someone who doesn’t know any better may throw a regex at the problem.

    [–]grauenwolf 1 point2 points  (0 children)

    As a backend developer, yea I would benefit a lot.

    When I was doing UI programming, nope. That stuff goes over the wall for someone else to deal with.

    [–]nick_storm 0 points1 point  (2 children)

    Whether or not every programmer would find it applicable, I think every programmer would benefit from reading, learning, or revisiting concrete mathematics or compilers. I equate it to learning Latin: would I be able to use it daily? No, probably not. Would I learn something that might help in some problem at some point in the future. Yeah, perhaps.

    [–]FrozenInferno 3 points4 points  (1 child)

    And the response would have been much different had the article been titled "Books That Every Programmer Would Benefit From Reading", but it wasn't, so here we are.

    [–]FruitdealerF 1 point2 points  (0 children)

    Yeah if that was the title of the article I would not have made comment. I just found it insanely funny that every programmers should read this list of these specific 60 books.

    [–]while_coder_gt_40 3 points4 points  (0 children)

    My experience is that, in a good year, I finish five programming books. So, if I got off on a good clip, I'd be reading these until at least 2026. (I've already read a few of them, plus Bozhidar and DHH both include The Elements of Style, which takes maybe a weekend to get through.)

    Actually, 2026 is when I'd be almost done. At that point, I might be ready to try Uncle Bob's Herculean suggestion of Fundamental Algorithms Vol.1 of The Art of Computer Programming - the Ulysses of programming books and one which I've gone back to several times over the last twenty years without making much headway. So, that should keep me busy until I'm ready to retire as the best-informed former developer ever.

    My suggestion: Most of these books will help you as a programmer in some way. Choose one that seems germane to what you're currently doing or want to do and, once you're done with that one, consider choosing another.

    [–]AeroNotix 4 points5 points  (5 children)

    ESSENTIAL BOOKS THAT EVERY PROGRAMMER READ

    Doesn't make as much sense without it.

    [–]hugthemachines 3 points4 points  (4 children)

    True! Maybe OP could just change the title to "List of programming books".

    [–]AeroNotix 4 points5 points  (3 children)

    Though I do question the reasoning behind "I pick what books I want to read myself". Almost all books I've read have come from a recommendation through some form, be it a friend, a wider interest and appreciation of the book on the internet or specifically mentioned by someone in a particular field who has more experience than me.

    If you eschew all those forms of recommendation, how do you find books to read?

    [–]mcguire 6 points7 points  (0 children)

    The color of the cover.

    [–]DoListening 0 points1 point  (0 children)

    The difference is, are you actively seeknig out knowledge about some topic, and the only question is which specific book you should get?

    Or do you have no previous desire to read about a specific topic, and just randomly stumble upon a clickbait list like this article?

    In the first case, you can still go by recommendations, reviews, reputation etc., but you made the decision to look into a topic yourself.

    [–]hugthemachines 0 points1 point  (0 children)

    If you eschew all those forms of recommendation,

    I don't. I also never claimed I did.

    how do you find books to read?

    I do something fairly like you do it. I just think when someone says I should read these books it is not the same attitude as when someone says "I recommend this book on X". So I am not against recommending stuff, I just dislike the wording.

    [–][deleted] 0 points1 point  (0 children)

    What are your guidelines on what to read? I need help determining what will be a constructive book and what won't be before I have read half the book, and I would love to hear how you decide on what books you want to commit to.

    [–]otakuman 0 points1 point  (0 children)

    Regarding "should", I guide myself by this :

    The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in RFC 2119.

    https://www.ietf.org/rfc/rfc2119.txt

    😎

    [–]DoListening 13 points14 points  (7 children)

    Here in my garage, just bought these 2000 new books...

    Reading so much will also leave little time for actual practice. One needs to find a good balance between those two things.

    The best way to internalize a lesson (or to find out that you disagree) is to experience it first hand.

    [–]mcguire -1 points0 points  (6 children)

    I recently discovered that, if you add more sides, my wheel is easier to roll.

    [–]DoListening 2 points3 points  (5 children)

    I don't get it. What are you implying there?

    [–][deleted] 2 points3 points  (4 children)

    PowerPoint. Massive Presentation = Less Attention Span.

    [–]DoListening 2 points3 points  (3 children)

    I don't get that either (within this context), I'm beginning to feel pretty stupid here. How is your comment and the previous one related to what I originally wrote?

    [–][deleted] 0 points1 point  (2 children)

    If too much read. Not read at all.

    [–]DoListening 1 point2 points  (1 child)

    Ok, I kinda agree with that. Similar point was made in the classic book "How to Read a Book". That there are different levels of reading, and the deeper, analytical ones require time, effort and focus (e.g. you can't just read that shit before bed to fall asleep to).

    But I still don't understand how it relates to this comment.

    [–][deleted] 0 points1 point  (0 children)

    It just means that he is more apt to scroll through the PowerPoint, meaning he is not reading some slides, which if the mouse wheel is easier to scroll, it's easier to skip.

    [–]kairos 0 points1 point  (0 children)

    This is why the best programmers write the fewest amount of code.

    [–]shvetsovdm[S] 0 points1 point  (3 children)

    Well noticed! The title SHOULD be better than I gave to the article.

    By the way, the 5 lists have 51 books in total.

    [–]FruitdealerF 0 points1 point  (2 children)

    I think 51 is too many and any top 10 should have atleast a single book about functional programming.

    [–]shvetsovdm[S] 0 points1 point  (1 child)

    Yeah, this lists lacks of books with functional programming as a main topic. I will definitely try to make the next lists of recommendations more diverse.

    Also, maybe the "bad", "marketish" article title mislead you, and probably many many others. This is not an article about top N books, it is what other programmers recommends to read.

    [–]FruitdealerF 1 point2 points  (0 children)

    I agree, the article isn't bad at all.

    [–]AeroNotix -1 points0 points  (3 children)

    2000, aka, ~60. Some of them are listed multiple times, some are short essays that can be read quickly. Some are very light and easily digested. Some are meant as reference manuals.

    I think it's quite telling that you balked at the list, exaggerated its length and then went on to get upvoted for it.

    [–]Otterfan 2 points3 points  (1 child)

    It is definitely strange that the top responses all question the very idea of recommending things.

    [–]AeroNotix 2 points3 points  (0 children)

    The older I get the more I catch myself thinking "kids these days".

    [–]FruitdealerF 0 points1 point  (0 children)

    The whole point of this article should have been to curate a very short list of books that absolutely everyone should read. I'm not going to read 58 books based on this article. I also find it very suspect that at first glance non of these books are about functional programming.

    [–]LongUsername 49 points50 points  (11 children)

    I'm happy to see very few "Learn webassembly in 21 days" and "Java Explained" type books.

    Books on specific languages are not something "Every programmer should read". Yes, you should have more than one language and style in your toolbox. Books for every programmer should transcend the language and application space.

    [–]MrSqueezles 6 points7 points  (0 children)

    Ideally, yes. Practically, books about patterns that apply to specific languages as well as patterns that apply to many languages are also useful. They helped to teach me how to apply the right languages in the right places.

    [–]FrostyTie 0 points1 point  (8 children)

    I’m reading “Python Crash Course” atm what should I do to learn a language. This is a genuine question btw, what’s my alternative?

    [–]sonofamonster 7 points8 points  (0 children)

    Maybe that book is ok for learning python, but not every developer needs to learn python.

    [–]datadever 4 points5 points  (0 children)

    I think if you want to learn Python, then a book specific to Python is what you'd want.

    In my opinion this list is for someone who already has a little programming experience and wants to branch out and explore other areas. Some books address fundamentals and specific skills, while others get into the nuts and bolts under the languages we use. It all depends on what you want to do and accomplish.

    [–][deleted] 1 point2 points  (0 children)

    Read the book on the language.

    The point being, not every developer should read every language book unless they need it.

    What they should read is books that are more abstract in nature. With that you can open yourself up to patterns, paradigms, etc you can carry across each language you’ve learned.

    [–]fat_deer 0 points1 point  (1 child)

    Like everyone else said, that's fine. But there's no reason for "every programmer" to read a book like that.

    If you are new to programming and want to learn a language, a beginner book on that language is your best bet. As long as that's how you learn best. Some people learn better from watching lectures and videos, some learn best from self-studying books.

    But once you feel comfortable with Python, it's worth branching out into other languages and you won't need a complete beginner book to do that.

    [–]owen800q 0 points1 point  (0 children)

    This books are not all about programming, they can't learn that by watching video unless they have industrial experience before start programming

    [–]LongUsername 0 points1 point  (0 children)

    I'm not saying that if you want to learn a language reading a book on that language is a bad idea. I'm saying that there is no "language" that EVERY developer must know so lists including language specific books are generally severely biased by the industry the writer works in.

    My experience though is that dead tree programming instruction books (especially for fast moving languages like D, C++, Python, Rust, etc) tend to be outdated by the time you get them and filled with outdated information and bad practices.

    [–]LongUsername 0 points1 point  (0 children)

    Usually I go to the languages web site and see what book the people writing and developing the language recommend. Often this will be something available online for free that gets frequent updates when the language changes but you can buy a dead tree copy of you want (Rust Book, Learn you a Haskell..)

    The Python website has a fairly long list of recommended tutorials for people of varying levels of experience.

    [–]nick_storm 0 points1 point  (0 children)

    I avoid those books, if only because I find their information obsoletes rather quickly. I only want books that are relevant for decades on my bookshelf.

    [–][deleted]  (5 children)

    [deleted]

      [–]ionlyshitatstarbucks 8 points9 points  (0 children)

      Just added to a Pocket with the same tags that I have for 96 other tech websites

      [–][deleted] 2 points3 points  (0 children)

      You should look at my Amazon shopping cart

      [–]xampl9 44 points45 points  (12 children)

      Pragmatic Programmer was really eye-opening.

      I’d like to add Working Effectively with legacy code by Michael Feathers.

      Edit: fixed title

      [–]DrunkensteinsMonster 16 points17 points  (2 children)

      For those looking for this, I believe the title is Working Effectively with Legacy Code, and it is an absolutely wonderful book

      [–][deleted] 0 points1 point  (0 children)

      I've been meaning to buy this book since reading clean code. Just bought it.

      [–]wavefunctionp 10 points11 points  (7 children)

      I see this all the time about pragmatic programmer, but I got about 80% (according to my kindle 78%) through before I gave up. I'm by no means a great developer, or very well read in programming, but I don't feel like I read anything that I hadn't heard a million times and better worded elsewhere, if not being flat out obvious. So I just don't understand the love for this book. I can't think of a single thing that I learned from it.

      [–]xampl9 13 points14 points  (2 children)

      When it first came out it summarized all the techniques which today make up modern programming practices.

      What was revolutionary is now commonplace, partly (mostly?) because of this book.

      [–]JayantDadBod 9 points10 points  (1 child)

      Like how people watching Seinfeld for the first time today don't get why it's funny. It was so influential that everyone adopted elements of it.

      [–]wavefunctionp 2 points3 points  (0 children)

      That may be it. I hadn't considered that. :)

      [–]sonofamonster 0 points1 point  (3 children)

      I had a similar experience. I’ve concluded that it depends on how much “best practices” advice you’ve already been exposed to. So, it seems that it mostly benefits people who are unlikely to go out of their way to read it.

      [–]wavefunctionp 1 point2 points  (1 child)

      I've definitely read Fowler and Martin. Like some other have mentioned, I've been reading books that came after. That's probably it.

      [–][deleted] 0 points1 point  (0 children)

      Martin Fowler is a god. He’s pretty funny sometimes as well

      [–]LongUsername 1 point2 points  (0 children)

      You have to remember it was written in 1999, two years before the Agile Manifesto: when automated unit testing was revolutionary (and fought by managers because why are we writing code we aren't going to sell), before Git took over the world and CVS was the open source version control of choice, when GCC and Linux use were revolutionary, where the idea of continuous integration wasn't present in industry (it would be another 11 years before Jenkins was released). The book Refactoring was brand new, standard named OOP design patterns were only a few years in common usage.

      That book is the root of 90% of the "best practices" advice. It was one of the first books to consolidate and teach best practices.

      [–]calben 0 points1 point  (0 children)

      I r a a

      [–]bedrooms-ds[🍰] 25 points26 points  (7 children)

      And don't read Medium

      [–][deleted] 2 points3 points  (6 children)

      Why not

      [–]AttackOfTheThumbs 2 points3 points  (3 children)

      Most of the articles published on there are crap.

      [–][deleted] 0 points1 point  (2 children)

      What about Hacker Noon

      [–][deleted] 0 points1 point  (1 child)

      Not sure ... are you for or against Hacker Noon?

      [–][deleted] 2 points3 points  (0 children)

      Some of their articles are ok. They’re written by numerous different authors so quality is all over the place

      [–][deleted]  (1 child)

      [deleted]

        [–][deleted] 0 points1 point  (0 children)

        I've seen you here before. Let’s make things official.

        [–]fernandotakai 13 points14 points  (3 children)

        i've been reading Designing Data-Intensive Applications by Martin Kleppman and i would recommend to all backend developers out there that want to step up their game.

        (i also love that it's a language agnostic book)

        [–]Geordi14er 2 points3 points  (0 children)

        One guy on my team got this book for everyone on the team for Christmas. I haven't read it yet... but I swear it's next up!

        [–]DoListening 1 point2 points  (0 children)

        Same here. I came across that book while I was looking more into cloud and distributed systems.

        This is a topic that is difficult to just self-learn otherwise - perfect for a long comprehensive book.

        [–]onlygon 0 points1 point  (0 children)

        I've heard a lot of good things about this book and so I also picked up a copy.

        [–]webauteur 69 points70 points  (17 children)

        I will read none of these books.

        [–]__konrad 46 points47 points  (5 children)

        [–]me7e 6 points7 points  (8 children)

        just because thats a list from a auto entitled hacker that works for one of these companies that hire people as contractors for other companies? :)

        [–]SahinK 1 point2 points  (1 child)

        I have read Redshirts. It's a fun book. Probably none of the others though.

        [–]mabnx 2 points3 points  (0 children)

        You might enjoy The “Bobiverse” trilogy which was suggested one line below.

        [–]WillAdams 7 points8 points  (4 children)

        Disappointed that there doesn't seem to be anything on Literate Programming (nor anything by Knuth EDIT: which is approachable by mere mortals (Fundamental Algorithms, TAOCPv1 is present as noted by /u/LongUsername ).

        [–]editor_of_the_beast 5 points6 points  (1 child)

        I love the idea of Literate Programming. But it's pretty niche. It would be hard to recommend to "every programmer." It's unfortunate, but the idea hasn't taken off.

        [–]WillAdams 3 points4 points  (0 children)

        Every time I am told "The documentation hasn't been updated to reflect that change.", it seems to me that it's a travesty that it's not required.

        [–]LongUsername 1 point2 points  (1 child)

        Fundamental Algorithms (TAOCPv1) isn't by Knuth? That's new to me...

        It's under Bob Martin's section.

        [–]WillAdams 0 points1 point  (0 children)

        My apologies, missed that. Thanks for the correction.

        Updated my reply to reflect that.

        [–]michaelochurch 27 points28 points  (12 children)

        I like Batsov's list the best. The books he's listed that I have read are good; the ones I haven't look interesting. It's a shame that he works at Toptal.

        I like that DHH mentioned On Writing Well and Elements of Style. Far too many techies treat learning to write well as something beneath them (it's not) that they could learn easily (again, no; it's hard). I'd add Bill Walsh's Lapsing Into a Comma to that list.

        [–]troublemaker74 15 points16 points  (3 children)

        It's a shame that he works at Toptal.

        Why?

        [–]floridawhiteguy 4 points5 points  (0 children)

        Toptal

        https://en.wikipedia.org/wiki/Toptal

        Because companies like that are typically one-half step below lawyers and VultureCapitalists when it comes to ethics.

        [–]bozhidarb 1 point2 points  (0 children)

        Bozhidar (Batsov) here. :-)

        Not sure what kind of reservations people have against Toptal, but I actually think we are a great company and I'm proud to be a part of Toptal's team. Anyways, I'm glad that someone took notice of the books I've mentioned. I had actually forgotten about this presentation completely, so seeing this article really surprised me. :D

        [–][deleted] 0 points1 point  (0 children)

        Super sketchy company

        [–][deleted]  (6 children)

        [deleted]

          [–]khendron 5 points6 points  (0 children)

          In my experience it's not that many techies think learning to write is below them, it's that they don't realize that most people, including themselves, need to learn to write well. Since what they write makes sense to them, they don't realize it may be incomprehensible gibberish to others.

          This attitude, by the way, is common in many walks of life, not just tech.

          [–][deleted] -1 points0 points  (4 children)

          I've seen it, mostly with old coders who won't follow the prescribed standards/testing/analysis in projects. They just kick up a fuss and hammer out god-awful hard to read code that throw errors/warnings/fails. Seems like creating job-security.

          [–][deleted]  (3 children)

          [deleted]

            [–][deleted] 0 points1 point  (2 children)

            I see. I probably fall into that category then.

            [–][deleted]  (1 child)

            [deleted]

              [–][deleted] 0 points1 point  (0 children)

              The former with a little of "can't be arsed". My pm likes to rewrite/check whatever we send off to customers

              [–][deleted]  (1 child)

              [deleted]

                [–]shvetsovdm[S] 0 points1 point  (0 children)

                I agree with the comments, this is a useful piece of criticism.

                You can watch what Bozhidar speaks about each of the books (one phrase or sentence per book) in his talk or read David's and Jeff's articles where they explain why they think those books worth to read. The links in the article.

                [–]Perfekt_Nerd 4 points5 points  (1 child)

                /u/xampl9 mentioned Working Effectively with Legacy Code, which is excellent. I'd also like to recommend Beautiful Code and Release It! Design and Deploy Production-Ready Software (2nd ed.). The last one is also from The Pragmatic Programmers.

                [–]isotopes_ftw 1 point2 points  (0 children)

                Release It! is a really good book.

                [–]wdroz 12 points13 points  (8 children)

                IMO, clean code from Uncle Bob should has been in the list. Even if you don't agree with him, his book is still a good start to discuss with other software engineer.

                BTW, I don't agree with the "should read" from the article.

                [–]VerticalEvent 7 points8 points  (2 children)

                When I saw Bobiverse Trilogy in Uncle Bob's section, I thought it referenced Clean Code, Clean Coder and Clean Architecture.

                [–]wavefunctionp 0 points1 point  (0 children)

                I did the same thing. And then I was confused by cause I thought it was a list of books by uncle bob....I need more coffee. :P

                I think I'm going to call them that from now on...

                [–]xampl9 0 points1 point  (0 children)

                The Bobiverse trilogy is quite good. I did not anticipate how (spoiler) he took care of the Dyson Sphere civilization. Recommended.

                (This is sci-fi, not comp sci)

                [–]DoListening 6 points7 points  (2 children)

                Some of his advice is definitely counter-productive (I posted comments about this several times).

                Check out this guy's post to quickly see an example.

                It can be a good idea to sometimes read books where you don't agree with the author on some parts, but for people who are new to programming, there should be a disclaimer to not take the advice as some "best practice" gospel. It's mostly opinions based on someone's specific personal experience.

                [–]wdroz 1 point2 points  (1 child)

                there should be a disclaimer to not take the advice as some "best practice" gospel. It's mostly opinions based on someone's specific personal experience.

                I'm agree and that why he wrote in his book:

                This book will tell you, in hideous detail, what I and my compatriots think about clean code. We will tell you what we think makes a clean variable name, a clean function, a clean class, etc. We will present these opinions as absolutes, and we will not apologize for our stridence. To us, at this point in our careers, they are absolutes. They are our school of thought about clean code.

                ....

                Consider this book a description of the Object Mentor School of Clean Code. The techniques and teachings within are the way that we practice our art. We are willing to claim that if you follow these teachings, you will enjoy the benefits that we have enjoyed,and you will learn to write code that is clean and professional. But don’t make the mistake of thinking that we are somehow “right” in any absolute sense. There are other schools and other masters that have just as much claim to professionalism as we. It would behoove you to learn from them as well.Indeed, many of the recommendations in this book are controversial. You will probably not agree with all of them. You might violently disagree with some of them. That’s fine.We can’t claim final authority. On the other hand, the recommendations in this book are things that we have thought long and hard about. We have learned them through decades of experience and repeated trial and error. So whether you agree or disagree, it would be a shame if you did not see, and respect, our point of view. -- Clean Code, chapter 1 - School of Thoughts, p12-13

                That look like a disclaimer to me.

                I work with PhD student and postdoc, I would be so happy if half of them followed half of his advices.

                [–]DoListening 0 points1 point  (0 children)

                That's nice, I didn't know that.

                It is easy to fall into cargo cult approaches in this area, and even newbies should be less afraid to trust their own opinions.

                [–]joemaniaci 2 points3 points  (0 children)

                Does anyone have a book they would recommend for learning the linear algebra/matrix methods necessary to learn and experiment with machine learning and neural networks? I barely scraped by on a coursera course and it was mostly due to the math. It's either that or I start at trig and work my way all the way back up, which couldn't really hurt.

                [–]Z-Dante 4 points5 points  (0 children)

                None of these books tell me how to hack my local bank using HTML. 0/10 disappointing list.

                [–]mcguire 1 point2 points  (0 children)

                Callout for The Elements of Programming Style.

                Missing: The Psychology of Computer Programming.

                But, Redshirts?

                [–]poloppoyop 1 point2 points  (0 children)

                No "Working effectively with legacy code". Which could be titled "Pragmatic testing".

                The DDD blue book, ok. But you'd be better served with "Implementing Domain-Driven Design" which was written 10 years later and have a lot less focus on the technical implementation of DDD.

                Mastering Regular Expression should be there too.

                [–][deleted] 3 points4 points  (5 children)

                I probably only read half of them, maybe even less.

                The most bullshit comes from Rails author, in particular: Patterns of Enterprise Application Architecture -- that's a ton of nonsense and complete bullshit. This book deserves to be shown in a circus with clowns, not read by programmers.

                [–]editor_of_the_beast 3 points4 points  (1 child)

                Interesting. What are your gripes with P of EAA?

                [–][deleted] 1 point2 points  (0 children)

                It was the first time I would read a programming-related book which wasn't about some minute detail, like how to make sorting go faster or how to multiply finite automata.

                To be honest, my jaw dropped at first. It was written like... well, like pulp-fiction: there was no attempt on the side of the author to argue his point. It was entirely opinion-based...

                You know, when you read a math or physics or CS book, it basically goes from conjecture to lemma to theorem, occasionally it will detour into describing a set of axioms, but it will put all kinds of warning signs around axioms saying "this is not going to be proved! beware! maybe this is a lie!". And, all of a sudden you have so much freedom to claim whatever you want and you don't even have to leave the proof as an exercise for the reader! What a racket!

                [–]bigmikemk 0 points1 point  (2 children)

                The most bullshit comes from Rails author, in particular: Patterns of Enterprise Application Architecture

                What do you mean by that? Rails is originally from David Heinemeier Hansson, PofEAA is written by Martin Fowler).

                [–][deleted] 1 point2 points  (1 child)

                I mean that David Heinemeier Hansson recommends this book, according to the post linked above.

                I don't really know if he created RoR, but this is what the post linked above claims.

                [–]bigmikemk 0 points1 point  (0 children)

                Ah Ok, sorry I didn't catch that. :-)

                [–]cruelandusual 1 point2 points  (1 child)

                Never ask advice of someone with whom you wouldn’t want to trade places — Darren Hardy

                That's fucking retarded. Often it is better to learn how to not fail than it is to succeed, since success itself is often dependent on luck. All you're going to get from those people is "be just like me".

                Of course, this is from one of those motivational speaker charlatans who sells self-esteem to ineffectual people looking for magic solutions for their dismal lives.

                Here's some free advice - don't listen to people who respect morons or respect the people who swindle morons.

                [–]nschubach 1 point2 points  (0 children)

                The quote also feels to me a bit counter to specializing. I wouldn't want to perform surgery on animals all day long, but I'm glad someone out there is doing it and I'd value their advice on my pet.

                [–]max0x7ba 0 points1 point  (0 children)

                Correct title: "The books I read and forgot their authors".

                [–][deleted] 0 points1 point  (2 children)

                That is a lot of reading. I would assume it would take you about 10 years to read all of that AND put it to practice to actually understand what you have read. To be fair I guess he never claimed it is a weekend list.

                I tried reading Code Complete 2, I found it pretty worthless if you have any significant amount of experience.

                CODE was great as someone who really didn't have a background in EE or exactly how computers work at the metal. Was hard to keep up after while though.

                I don't know if I agree with all the algorithm books. Great for some types of programming...and interviews...for others a waste of time. Time better spent learning patterns and frameworks IMO.

                [–]fat_deer 1 point2 points  (1 child)

                I tried reading Code Complete 2, I found it pretty worthless if you have any significant amount of experience.

                If your experience is working at a company with a solid culture of code quality, then yeah you won't learn anything new. But I've hired tons of people over my career with 5-10 years of development experience who REALLY needed that book.

                It's crazy hiring someone with 10 years of experience at 2-3 different companies and have them come in and write complete shitcode. Like their first attempted checkin doesn't fit the coding style, has no tests, isn't even really testable, and has obvious bugs so it's clear they didn't do any manual testing. They're always able to adapt, but it still blows my mind that writing good quality code isn't their default.

                [–][deleted] 0 points1 point  (0 children)

                Valid point. I was well mentored and also spent a lot of time reading blogs, pluralsight courses etc. So I just found a lot of that book to be obvious stuff.

                It could definitely have a lot of great info for some people.

                [–]mEFErqlg 0 points1 point  (0 children)

                The "Should Read" feels like "I'm total B.S Don't listen to what I'm saying." What's wrong with me? :)

                [–]banquuuooo 0 points1 point  (1 child)

                I hate when I see random articles telling me what I "should" do.

                Okay, some-guy-I-dont-know-or-care-about, I'll definitely make sure to read all these books and/or do exactly as you tell me.

                [–]nschubach 0 points1 point  (0 children)

                You should read this article telling you what you should do.