In his latest post Tomas Votruba shares some of his thoughts around the importance of code readability and the idea of "cognitive complexity".
Cyclomatic complexity is a static analysis measure of how difficult is code to test. Cognitive complexity tells us, how difficult code is to understand by a reader.
Today, we'll see why is the later better and how to check it in your code with a Sniff.
He references this post and this PDF as sources for more information about cognitive complexity but opts for code examples to explain some of the basic concepts. He then gets into the automation of these kinds of checks, using a custom code sniff to check the complexity of the code. He walks through the installation process of the
CognitiveComplexitySniff and shares some example results from its evaluation.