
Programming: Principles and Practice Using C++ (2nd Edition)
Bjarne Stroustrup
4.5 on Amazon
3 HN comments

Blood, Sweat, and Pixels: The Triumphant, Turbulent Stories Behind How Video Games Are Made
Jason Schreier
4.7 on Amazon
3 HN comments

The Art of Doing Science and Engineering: Learning to Learn
Richard W. Hamming and Bret Victor
4.7 on Amazon
3 HN comments

Effective Java
Joshua Bloch
4.8 on Amazon
2 HN comments

Mastering Bitcoin: Programming the Open Blockchain
Andreas M. Antonopoulos
4.7 on Amazon
2 HN comments

Weapons of Math Destruction: How Big Data Increases Inequality and Threatens Democracy
Cathy O'Neil
4.5 on Amazon
2 HN comments

The Making of Prince of Persia: Journals 1985-1993--Illustrated Edition
Jordan Mechner
4.8 on Amazon
2 HN comments

Steve Jobs
Walter Isaacson, Dylan Baker, et al.
4.6 on Amazon
2 HN comments

Effective C: An Introduction to Professional C Programming
Robert C. Seacord
4.5 on Amazon
2 HN comments

Building Secure and Reliable Systems: Best Practices for Designing, Implementing, and Maintaining Systems
Heather Adkins, Betsy Beyer , et al.
4.7 on Amazon
2 HN comments

Database Internals: A Deep Dive into How Distributed Data Systems Work
Alex Petrov
4.7 on Amazon
2 HN comments

Programming Rust: Fast, Safe Systems Development
Jim Blandy, Jason Orendorff, et al.
? on Amazon
2 HN comments

Everybody Lies: Big Data, New Data, and What the Internet Can Tell Us About Who We Really Are
Seth Stephens-Davidowitz, Timothy Andrés Pabon, et al.
4.4 on Amazon
2 HN comments

Mastering Ethereum: Building Smart Contracts and DApps
Andreas M. Antonopoulos and Gavin Wood Ph. D.
4.6 on Amazon
2 HN comments

Java Concurrency in Practice
Brian Goetz , Tim Peierls, et al.
4.7 on Amazon
2 HN comments
honkycatonMay 25, 2021
I don't believe in being prescriptive to anyone about how they write their code, because I think people have different preferences and forcing someone to write small functions when they tend to write large functions well is a unique form of torture. Just leave people alone and let them do their job!
I don't think it is the perfect solution, but a lot of people assert "we can't do better, no point in trying, just write whatever you feel like" and I think that is a degenerate attitude. We CAN find better ways to construct and organize our code, and I don't think we should stop trying because people don't want to update their pull requests.
samuellonJune 25, 2021
I'm already reading Kleppman's book right now. Tons of very useful knowledge, although quite detailed, and a lot of details around distributed computing, consensus algorithms etc (Part II), which I'm not sure I will need and which make the book rather long. Still, surely worth pressing through.
Some titles I would like to dive into in the summer:
- "The Art of Immutable Architecture" by Michael Perry.
Possibly also:
- "Machine Learning Design Patterns" by by Valliappa Lakshmanan et al.
- "Building Secure and Reliable Systems" by by Heather Adkins et al.
And perhaps something lighter, more inspirational for the day to day work:
- "Coders at work" by Peter Seibel