I'm in the mood for a good read. What books about software development are really well-written and enjoyable at a high level while still technical and informative.
I'm looking more for technical-leaning books as opposed to memoires and stories, etc. But feel free to mention those as well.
Would love some suggestions!
Top comments (73)
Here is the usual that I hear about (and have read):
But here is one of my favorites that I don't often see mentioned: Game Programming Patterns - (and an amazon link to the book for print/kindle versions)
Now, I'm not a game dev but this is such a fantastic book to read (the web version is free). Code samples are easy to understand and it goes over the standard patterns that you'll find in libraries like Redux, Angular, or when you do animations, or events, etc. Or Node server stuff.
Even touches on how Prototype works in JS!
Seriously, give it a look and read it!
Yes! Game Programming Patterns by Bob Nystrom is excellent. Great examples and explanations.
It's really well written. Bob has an awesome blog and I remember seeing that he's working on a book that walks you through building a language compiler.
Those are the best book in my opinion, I can add algorithm design manual by Steven S. Skiena
I am going to buy "Game Programming patterns"
I second that. For all of the three.
Code Complete is hands-down, just an amazing book. I love anything by Sandi Metz as well, as well as Ruby Under a Microscope.
Maybe someday I'll add my own title to this list π
Came here to advice "99 bottles of OOP" by Sandi Metz, she's incredible.
Put me down for a pre-pre-order.
I've just recently read and can recommend:
Coders at work: Amazing insights from the worlds top Programmers. You need to read this.
Release It!: A pragmatic realization of how to ship production ready software and what are the dangers of doing it so. Realy good Read.
I'm currently reading:
The Phoenix Project: A good read that exposes stories and hard lessons about IT.
Team Geek: I've been recommended to read this. So far its good.
I liked Release It! too
I think coders at work might be my next read.
Head first design patterns
shop.oreilly.com/product/978059600...
This cover is straight out of the 90s. I love it π
Anything 'Head First' is done well and is actually FUN to read. I used the Head First Java book to get started up with the language in 2006. Now, these may not be the most in depth books but the way they teach, I love.
I second this, I like their pedagogical technique. I feel like it helps me learn better than the more standard format
Let me show my age by recommending, The Mythical Man Month. It is comparatively shorter book written more than 20 years back. The ideas in them are still valid.
We still add people to late project thinking it will somehow rescue the project. And we still look for the silver bullet. We still suffer from lack of effective communication between team-members.
Go read this short book. You will benefit immensely.
So glad someone else recommended this. But yeah, the last edition is 20 years old, and it's the 20-year anniversary edition... The first edition was published in 1975 originally, and some of the essays are a few years older.
Sometimes I think we forget how old our craft actually is.
If you know a bit of Ruby, you might be interested in one of its most unique aspects: Metaprogramming Ruby by Paolo Perrotta is very engaging read. I really enjoyed trying out the fascinating concepts for myself.
Nice. I write in Ruby but my metaprogramming toolset is pretty limited. Will definitely give this a look.
Grokking Algorithms:
amazon.com/Grokking-Algorithms-ill...
Grokking Algorithms teach you not just a difficult topic but how to explain the same stuff to others
I would add Working Effectively with Legacy Code to these recommendations.
I just recently started to tread Code by Charles Petzold and it seems really interesting. It isn't entirely about software but so far it does help me understand how a lot of things work with a computer.
I haven't reread it in a while but I've long held that Software Tools is one of the all-time best books on software engineering.
Awesome, thanks!
I list a few more favorites on my blog.