Writing code that any programmer who read can understand is a **must-have skill** for software developers. The fact is: only 20% of the programmers have the ability.\n\n> “Any fool can write code that a computer can understand. Good programmers write code that humans can understand.” — Martin Fowler\n\nWhen I started caring about code readability I noticed that my code started to be:\n\n* easier to maintain\n* easier to refactor\n* reusable\n* consistent\n\n### [The Book](https://amzn.to/2MF8ES7)\n\n!(https://hackernoon.com/hn-images/0*5QHaOtepBO5mLje1.)\n\n[Robert "Uncle Bob" Martin's "Clean Code: A Handbook of Agile Software Craftsmanship"](https://amzn.to/2MF8ES7) is the clean coder programmer bible. This book talks about code, behaviour, automated tests and so on.\n\n#### Let's get practical! Writing meaningful names.\n\nOne of [Clean Code](https://amzn.to/2MF8ES7) chapters talks about meaningful naming. In this story, you are going to be the code reader. Take a look at this function:\n\ndef calc(n1, n2) \n return n1 / n2 \nend\n\nDo you think "calc" is a good name for this function? Uncle Bob would say: no! Why?\n\n1. “calc” is an **abbreviation**: don't!\n2. Functions do something. It must be named with a **verb**.\n3. Even I rename "calc" to "calculate", it still be vague. We need to improve the **semantics** by giving the function name more meaning.\n\nThis function divides two numbers. "divide" is a good name for it.\n\ndef divide(n1, n2) \n return n1 / n2 \nend\n\nresult = divide(1, 2)\n\nWe still have problems with it. "n1" and "n2", the parameters, are not semantic. What if we call them "dividend" and "divisor"? The same thing to the "result" variable. It should be called something like "quotient".\n\ndef divide(dividend, divisor) \n return dividend / divisor \nend\n\nquotient = divide(1, 2)\n\nMuch more semantic!\n\n[If you are not convinced to read this book yet, take a look in this picture and buy this must-read book!](https://amzn.to/2MF8ES7)\n\n!(https://hackernoon.com/hn-images/0*nFyPjrYqSGT_dUPJ.png)\n\n> Thank you for reading! Don't forget to follow me on [Medium](http://medium.com/@vnbrs), [Instagram](http://instagram.com/vnbrs/) and [LinkedIn](http://linkedin.com/in/vinicius-brasil/).