References
The Art of Readable Code by Dustin Boswell & Trevor Foucher, ISBN 9780596802295
Code should be written to minimize the time it would take for someone else to understand it.
Test Driven Development: By Example by Kent Beck, ISBN: 9780321146533
each test can cover a small increment of functionality
Refactoring, Improving the Design of Existing Code by Martin Fowler with Kent Beck
Good programmers write code that humans can understand.
Working Effectively with Legacy Code by Michael C Feathers
Code without tests is bad code. It doesn’t matter how well written it is; it doesn’t matter how pretty or object-oriented…
Code Complete, Second Edition by Microsoft Press, ISBN: 0735619670
Trying to improve software quality by increasing the amount of testing is like trying to lose weight by weighing yourself more often.
The Pragmatic Programmer: From Journeyman to Master by Andrew Hunt and David Thomas
Because perfect software doesn’t exist
Accelerate by Jez Humble, Gene Kim, Nicole Forsgren, ISBN: 9781942788331
“Business as usual” is no longer enough to remain competitive
Continuously improve on Cycle times, Change failures, and Mean time to fix
Game Programming Patterns by Robert Nystrom
a key goal of software architecture: minimize the amount of knowledge you need to have in-cranium before you can make progress