Did you get this booklist from ChatGPT?
I don't think so as he got at least one title wrong: Head First Design Principles should be Head First Design Patterns.
Ask HN: Top 10 Timeless Software Books That ChangedLife as Software Engineer?
31–40 of 72 posts
Re: Ask HN: Top 10 Timeless Software Books That ChangedLife as Software Engineer?
#32i would be interested in stopping you writing your book - i really do not think you have any idea about software development
Re: Ask HN: Top 10 Timeless Software Books That ChangedLife as Software Engineer?
#33'A philosophy of software design' by John Ousterhout, great book which provides good understanding of what complexity in software means. Very concrete and short.
Yes, this book is excellent. And it's an antidote to some common advice that really isn't very good.
Re: Ask HN: Top 10 Timeless Software Books That ChangedLife as Software Engineer?
#34Thanks for the list, here it is again: 1. Code: The Hidden Language of Computers (Pure Basic: Starting with Binary) 2. Working Effectively with Legacy Code (Dealing with an ugly codebase) 3. Refactoring Improve the design of the existing codebase (Making changes safely without breaking the code) 4. Test-Driven Development (TDD) (Once you’ve learned all the above, you always start writing tests first) 5. Head First De…
>4. Test-Driven Development (TDD) (Once you’ve learned all the above, you always start writing tests first) I've seen like bilion discussions about TDD and I still dont understand why is it so overhyped. Additionally it sucks that for some people you either do TDD or dont write tests at all (what the f...., indeed) This whole red-green step in TDD makes complete no sense when you're writing new code. The only value p…
Re: Ask HN: Top 10 Timeless Software Books That ChangedLife as Software Engineer?
#35The Pragmatic Programmer - I read this book when I was programming professionally for maybe 5 or so years, so I already had my basics covered, but reading this book really expanded my horizons on what it means to create software profesionally. I read, maybe, 100 books about programming since and before then, but no other book changed my thinking that much like this one.
I wrote it about here : https://burhanrashid52.com/the-pragmatic-programmer/
Re: Ask HN: Top 10 Timeless Software Books That ChangedLife as Software Engineer?
#36In another thread I mentioned Peopleware: productive projects and teams. Even the best programming book in the universe won’t help if the environment, leadership and team don’t support your efforts. this book is about that and how to give creative knowledge workers the environment and tools they need and then get out of their way and keep others out of their way as well. A great read whether you’re wearing a programm…
Re: Ask HN: Top 10 Timeless Software Books That ChangedLife as Software Engineer?
#37all i can say is ... no i would be interested in stopping you writing your book - i really do not think you have any idea about software development
Re: Ask HN: Top 10 Timeless Software Books That ChangedLife as Software Engineer?
#38Earlier quoted context omitted.
>4. Test-Driven Development (TDD) (Once you’ve learned all the above, you always start writing tests first) I've seen like bilion discussions about TDD and I still dont understand why is it so overhyped. Additionally it sucks that for some people you either do TDD or dont write tests at all (what the f...., indeed) This whole red-green step in TDD makes complete no sense when you're writing new code. The only value p…
I don't use the proscribed TDD process very often, but I use the TDD mindset all the time to great effect. Listing out the tests you're going to write before you write the code (even mentally) can be considered a continuation of the requirements-gathering process. And thinking about how you're going to test your code before you write it will, in my experience, improve the design. (Particularly, it seems to encourage…
But this is not TDD.
I've worked in HW industry where cost of bugs is high and we analyzed specs during brainstorming session as 3-5 ppl and brainstormed test cases that we want to test.
It worked well because this way we we're finding way more things to test than when doing it alone.
But still, this is not TDD. We weren't doing TDD.
>(Particularly, it seems to encourage the single-responsibility principle, as code that's doing too much or combining layers of abstraction is really hard to test.)
Whether your code is easily testable will be challenged by writing tests regardless of the moment of writing test - before or after writing impl.
So no benefit from TDD over non-TDD approach.
Re: Ask HN: Top 10 Timeless Software Books That ChangedLife as Software Engineer?
#39Re: Ask HN: Top 10 Timeless Software Books That ChangedLife as Software Engineer?
#40"Programming: Principles and Practice Using C++" by Bjarne Stroustrup, the creator of C++. I learned programming first time from this book and I think I'm so lucky that I've done it. The book is about philosophy and the mindset of programming more than introducing some tools or techniques, so we can consider it as "timeless".