Today's thread on the Debugging book made me realize there are likely great books related to software development that I've never even heard of, never mind read. I'd like to find (and eventually read) them.
Kind of hard to search for because the titles are all over the place, but here are some of the past book discussions I've found that had a lot of comments and good suggestions and discussion.<p><a href="https://news.ycombinator.com/item?id=41387062">https://news.ycombinator.com/item?id=41387062</a><p><a href="https://news.ycombinator.com/item?id=35929112">https://news.ycombinator.com/item?id=35929112</a><p><a href="https://news.ycombinator.com/item?id=32130578">https://news.ycombinator.com/item?id=32130578</a><p><a href="https://news.ycombinator.com/item?id=29498220">https://news.ycombinator.com/item?id=29498220</a><p><a href="https://news.ycombinator.com/item?id=29306651">https://news.ycombinator.com/item?id=29306651</a>
My personal favorites:<p>- Patterns of Enterprise Application Architecture (Martin Fowler) - early-mid 2000s and it stays valuable to this day. It's nice to have a formalized view of concepts you know in practice.<p>- Clean Architecture (Robert Martin) - Great application architecture concepts being formalized<p>- Designing Data Intensive Applications (Martin Kleppmann) - Fantastic perspective on your application's data. This is probably the most recommended book I've seen on Hacker News.<p>- SQL Performance Explained (Markus Winand) - Just a killer, concise book to make you truly understand basic DB performance, specifically with indexes. I've met so many developers (myself included before this book) who thought any index will work and then they'd just wing it. Your RDBMS has tools for finding the best optimizations in your queries and you should use them. Your indexes are also more picky than you may think, but they're also incredibly fast if you place them correctly. It's a lot easier to see once you understand.
When I was at university Getting Real was a big influence[1].<p>[1] <a href="https://books.37signals.com/8/getting-real" rel="nofollow">https://books.37signals.com/8/getting-real</a>
Game programmer here. The book Game Programming Patterns by Robert Nystrom is a great book that expands upon some of those in Design Patterns, and even teaches about additional ones that are very core to game development. It's a great read; I own physical copies of both books I find them so valuable.
The C programming language (ansi edition) - I had it before even leaning how to program properly. The explanations was so clear you could work out the examples with pencil and papers<p>Mystical man-month and the pragmatic programmer. The former gave insight about managing a team, the other about managing yourself.<p>Currently I’m reading:<p>Unit Testing: Principles, Practices, and Patterns by Vladimir Khorikok<p>Designing Data Intensive Application by Martin Kleppman<p>And very recently completed Learning Domain-Driven Design by Vlad Khononov<p>I think the three are quite good too
Design Patterns by Erich Gamma (<a href="https://en.wikipedia.org/wiki/Design_Patterns" rel="nofollow">https://en.wikipedia.org/wiki/Design_Patterns</a>)
Programming Perl, by Larry Wall.<p>just the preaching of "the three great virtues of a programmer" makes it the most influential book in my entire ( 25+ years and counting ) carrer.
C Programming: A Modern Approach (K N King) that I recently finished, has been great.<p>Prior to that, JavaScript the Definitive Guide.<p>Also cracked into Crafting Interpreters (was great) but got sidetracked.