Awareness
Last updated: 5 September 2021
Reading books and articles, watching talks and documentary films, and listening to stories with critical thinking can help us to raise our awareness and to become better people personally and professionally.
Let’s see some books that helped me in this profession.
When learning
When programming
-
Understanding the Four Rules of Simple Design by Corey Haines
-
Working Effectively with Legacy Code by Michael C. Feathers
-
Design Patterns: Elements of Reusable Object-Oriented Software (known as GoF Patterns) by Erich Gamma, Ralph Johnson, John Vlissides, and Richard Helm
-
Code Complete. A practical handbook of software construction by Steve McConnell
-
Refactoring: Improving the Design of Existing Code by Martin Fowler
-
Clean Code by Robert C. Martin
-
The Art of Readable Code by Dustin Boswell and Trevor Foucher
-
Growing Object-Oriented Software, Guided by Tests (known as GooS book) by Steve Freeman and Nat Pryce
-
99 Bottles of OOP. A Practical Guide to Object-Oriented Design by Sandi Metz and Katrina Owen
-
The Coding Dojo Handbook. A practical guide to creating a space where good programmers can become great programmers by Emily Bache
-
What to Look for in a Code Review. Effective tips for reviewing code by Trisha Gee
-
The Mikado Method by Ola Ellnestam and Daniel Brolund
-
97 Things Every Programmer Should Know by Kevlin Henney
-
Effective Programming: More Than Writing Code by Jeff Atwood
-
Test Driven Development: By Example by Kent Beck
-
Fifty quick ideas to improve your tests by Gojko Adzic, David Evans, and Tom Roden
-
Domain Modeling Made Functional: Tackle Software Complexity with Domain-Driven Design and F# by Scott Wlaschin
-
Enterprise Integration Patterns: Designing, Building, and Deploying Messaging Solutions by Gregor Hohpe and Bobby Woolf
When versioning source code
- Software Configuration Management Patterns: Effective Teamwork, Practical Integration by Stephen P. Berczuk and Brad Appleton
When creating products
-
The Cathedral and The Bazaar by Eric S. Raymond
-
Handbook of usability testing: how to plan, design, and conduct effective tests by Jeff Rubin and Dana Chisnell
-
Don’t make me think by Steve Krug
-
Pretotype it. Make sure you are building the right it before you build it right by Alberto Savoia
When releasing
From my point of view, an interesting book for any technical profile in this profession:
- Release It! by Michael Nygard
When working in a team
-
The Mythical Man-Month by Fred Brooks
-
Peopleware by Tom DeMarco and Timothy R. Lister
-
Apprenticeship Patterns by Dave Hoover and Adewale Oshineye
-
The Software Craftsman: Professionalism, Pragmatism, Pride by Sandro Mancuso
-
The Pragmatic Programmer: From Journeyman to Master by David Thomas and Andrew Hunt
-
Extreme Programming Explained: Embrace Change by Kent Beck and Cynthia Andres
-
Quick glance at: Agile Anti-patterns by David Tanzer
-
Agile Technical Practices Distilled by Pedro Moreira Santos, Marco Consolaro, and Alessandro Di Gioia
An idea
If you have a book library in your company, add a poster with some advice:
- No hurry.
- Rereading is allowed.
- Enjoy: if it’s not the right moment for a particular book, take another one and try it again later.
- Take regular breaks for assimilation and reflection.
- Share what you read (conversations, posts, small talks, drawings, etc).
Further reading
- Books by women by Kalina Zografska
- Recommended Reading for Developers by Jeff Atwood
Credit
Image by Speedy McVroom from Pixabay