Reading and Learning 'Clean Code' by Uncle Bob #Day_6
Understand clean code with me and become the clean coder
Table of contents
Welcome to Day 6!! Today we'll be exploring chapter 3 from the book, 'The Clean Coder'. If by any chance you're wondering why we are alternatively exploring these two books? It can get a bit overwhelming when one goes on and on about a subject. We need time to process the information before moving on to the next piece of it. And, in a way, both books are about clean practices of the same profession. If you are a new reader and not familiar with what's going on in this blog, we recommend you to check our Day 1. You can also read this one first and then move to Day 1, it wouldn't be an issue. I write in simple language, easy to understand.
Chapter 3: Saying Yes
Chapter 2 was about learning to say no. Now here we'll understand how to say yes. Dozens of people say that saying no is an art. To my understanding, even saying yes is an art. The book talks about what it truly means in our profession to say yes and how to say yes depending on the situation. In my opinion, the original art chapter 2 and 3 teaches us not to say no or say yes but the art of negotiation. We cannot behave like kings and just bluntly say no or yes to a situation. We are here to do a particular work and we have our responsibilities. Our decisions show our sense of our responsibilities and commitment to our work. This brings us to discuss this matter through some brief points.
Say. Mean. Do. What you say, shouldn't be like words on water. With your complete senses, you should say or commit to something then only you'll be able to mean it. 'This project will be deployed next week', 'I will provide the demo to the clients on Monday morning', and 'I will take my wife for dinner this Saturday'. Senses, use your senses before committing and then do exactly as you said. Take your wife for dinner, maybe do that every Saturday.
Avoid starting your sentences with non-commitmental phrases. 'I wish', 'I hope', 'I should' etc. are examples of non-commitment phrases. A professional would rather use phrases like 'I will'. 'I will finish the report by tomorrow', 'I will present the prototype on Wednesday' and 'I will buy her an anniversary gift'. Either the commitments get completed or not. It seems scary, but that's how a professional works. Even in personal life, when committing to buy gifts for their wife.
Commit to those things that are totally in your control. If someone else is involved with you, then too, you can perform the specific actions that are under your role. Weather is not in your control, do not commit to your wife to take her for a sunny beach day in July. Instead, commit her that she'll have a lovely outing on Sunday.
Unexpected blockades and hindrances can occur or something even worse can happen. You may not make it to the deadline of your project. In such scenarios, the best thing to do is raise red flags to your stakeholders. The individuals or organizations which will be affected by it. Keep communicating have transparency with others and then look for solutions.
There should be discipline and commitment. We need to recognize our responsibilities well in our role. The priorities among the responsibilities should also be recognized.
Using the word 'try' is non-commitmental. Professionals shouldnโt be saying yes to everything but they should be able to find creative ways to make that yes possible. This is a way of thinking, that things can always be solved. As problem solvers, we must think this way, then only we can notice areas where something can be done to achieve the target.
There's an example conversation in the book to explain how to say yes according to the situation. I have created my version of explaining the same concept inspired by that conversation.
Jeanne: Noel, on Monday we need to give the demo to our clients of the website.
Noel: I have to see if that's possible.
Noel is not committing to providing the demo on Monday. It is unclear whether the demo can be done on Monday or not.
Jeanne: I want to know definitely, is there a chance we can give the demo to our clients on Monday?
Noel: What kind of demo we are looking here for? Are they looking for user interaction with the website?
Jeanne: Yes, they should be able to log in and explore the website as the logged-in user.
Noel: Will it be okay if the user information is not saved for future logins?
Jeanne: That's okay, it is just for the demo.
Now the picture is clearer to Noel about what he needs to provide. Before committing anything, he asked a couple of questions which would help him to answer Jeanne with a definite no or yes.
Noel: Okay Jeanne, we can give the demo on Monday.
Noel now has committed to providing the desired demo on Monday. As a professional, he hasn't used any phrases or words especially like 'try'. This conversation is light and a bit different than mentioned in the book but it contains the gist of it. I could have given you a large comprehensive conversation like a case study. But it can get boring and I ran out of wife jokes.
My Opinion
As a person, I find these tips helpful not only in my professional life but in my personal life as well. In a way, these are just basic manners and etiquettes one needs to follow in social conduct. Whichever profession one belongs to, one can utilize these tips there. It'll only improve their professionalism and their work ethic.
This will create a positive environment around the individual practicing these methods. It is influential and makes things better at the person's organization. These atomic practices polish the overall procedure and impact the result for the betterment. I found this extremely helpful and I hope you find these useful too.
With this, we have come to the end of Day 6. On Day 7 we will be learning about Comments from the book, 'Clean Code'. That will be our chapter 4.