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.
https://news.ycombinator.com/item?id=41387062
https://news.ycombinator.com/item?id=35929112
https://news.ycombinator.com/item?id=32130578
Oh wow, thank you for sharing these past threads. I'd tried searching but didn't have much success before posting my ask so really appreciate you bringing these to light.
Thanks for the references. I remember there was a Show HN that actually combed through these threads and made book recommendations based on how good someone is at making book recommendations. But many of those links no longer work.
My personal favorites:
- 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.
- Clean Architecture (Robert Martin) - Great application architecture concepts being formalized
- 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.
- 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.
Great reading recs, thank you. Really appreciate the context as well for each. I'm familiar with a couple of these (not all!) and am excited to dig in.
When I was at university Getting Real was a big influence[1].
This is a classic, but it's been a while since I last saw this! Thanks for sharing.
Code Complete by Steve McConnell is a really great book.
Thanks! Adding this to the top of my reading list. I noticed there's a newer version (Second Edition); any thoughts on if I should read that or the original version?
Even the second edition is over twenty years old. I don't think there's any reason not to read the second edition.
Good to know, thanks tasseff!
np. The 2nd edition, have not read the 1st :-)
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.
How did you get into game programming, if you don't mind me asking? I've always thought it would be such an interesting career but have heard horror stories about what the industry is like now...
On the personal interest level? It kind of snowballed. I was 13 when I finally saved up enough allowance money to purchase copies of Minecraft for my sister and I. I can not understate how sad I was when I couldn't find any emerald items, nukes, or clay soldiers to make civilizations for in my creative inventory. This was where I learnt all of those were mods, and not in the base game. I was too young to understand how to use forge (let alone make my own mods), so I got into adventure maps and minigames using command blocks and redstone. I made friends and we worked on each other's stuff. I panned out to have a knack for the command block side of it while others could utilize building skills to make the levels pretty and well designed. It was a lot of fun. When I started taking programming classes in high school and found out the command block work translated over to me doing well with coding, it was pretty set in stone that game programming was what I wanted to go into. I went to a well-ranked college with it as an available major.
> heard horror stories about what the industry is like now...
There definitely are. You have to remember to value yourself and who you are outside of your work, or else you can be taken advantage of. If the amount of work you're doing is so much that you can't do the other things that make you "you," it's too much work.
I graduated at the same time this never-ending wave of layoffs began, so it has been stressful at many points. Some of my best friends have been a part of those lay offs. Some of us pivoted to a new career because there wasn't a chance to even get started. I made do for some time by going to indie game developer events in the city my family lived near. I built relationships, found in-person community, and landed enough contract work as a Unity programmer to pay my student loans until I could find something long-term.
I now work at a small company where we do a mix of Unity and Web development. Sometimes it's our own products/services, but until those are successful enough we do contract work regularly to build out our runway. I enjoy what I do at work a whole lot, and it's been great getting critique from senior programmers with loads more experience than me. Very thankful about where I am.
In the future, I think I'd be okay with changing over to something else in SWE for my career, so long as it was to help people. I know that I love working with others on games enough that I'd still do it in my free time, just like I did when I was "mapmaking" as a kid.
Thanks for the suggestion! Adding this to my reading list. I also love reading physical copies; I have a Kindle for when I travel, but it just doesn't hit the same especially for books that I go back to time and time again.
C Programming: A Modern Approach (K N King) that I recently finished, has been great.
Prior to that, JavaScript the Definitive Guide.
Also cracked into Crafting Interpreters (was great) but got sidetracked.
The Goodreads summary for Crafting Interpreters looks fascinating - I've never read anything like that!
https://www.goodreads.com/book/show/58661468-crafting-interp...
《improving the design of existing code》
This is by Martin Fowler, right?
highly recommend “Coders at Work”
This looks really interesting! It looks like there's a founders at work too which might be a good read for different reasons.
mythical man month
How had I not heard of this? adding to my reading list, this looks really good!
Yes! Highly recommend. It has so much wisdom for such a short book.
the bible it saved my soul so incan sit today and write Rist
Honestly, reading the Bible helped me in ways I never anticipated. Books like Esther are master classes in how to interact with people.
You mean Rust?