I just finished reading Robert C. Martin’s book “The Clean Coder”.
Although it has “code” in its name, this book teaches little about the code. It tackles the other, much more important part of any coder: the person. If you feel like the programmers are unfairly regarded by the other people, or misunderstood in some ways, this book can explain some of the reasons and teach you a way out.
Mr. Martin is a good story-teller and the stories from his experience are engaging and dramatic, and still, well balanced and to the point enough to be instructively helpful.
It’s interesting that Mr. Martin says that generally the programmers prefer to rather deal with machines than with people. I think this is just because we are so passionate about dealing with machines that leave too little time for our interaction with people, which brings us to being less and less able to do communicate with them, which in turn, makes us prefer the machines. And as interesting is that the advice in this book can bring back the balance that every human being wants.
Mr. Martin does an awesome job in depicting the image of a Professional (with a capital “P”), and this doesn’t necessarily mean a professional programmer, but any profession, really. How to build credibility and trust that we usually associate with the concept of professionalism.
It teaches about responsibility: when and how to take it. When and how to say yes and no, and what those answers mean to the ones we give them. One thing that I found particularly interesting was that if you pay attention, the details in your language reflect how certain you really are in what you’re just committing to.
I also liked the idea that the times of crisis those that show your real values, and what you really believe in. And analyzing how we behave at those times can really teach us a thing or two about us. Taking action upon those finding is another important step, and Mr. Martin gives some ways to go about that too.
One of the most valuable and immediately practical advice are regarding estimation: why are estimations hard to make, why are they important, and how to make and maintain them in a way that doesn’t hurt us or the other parties involved.
It also has advice on productivity, getting stuck and out of it, time management, team mechanics, collaboration and mentoring. This is a book I needed, and I have things I have written down as I’ve read them, and applied the next day. It’s good to have read it.