Chapter 20. How to Handle Code Complexity in a Software Company
Here's an obvious statement that has some subtle consequences:
Only an individual programmer can resolve code complexity.
That is, resolving code complexity requires the attention of an individual person on that code. They can certainly use appropriate tools to make the task easier, but ultimately it's the application of human intelligence, attention, and work that simplifies code. So what? Why does this matter? Well, to be clearer:
Resolving code complexity usually requires detailed work at the level of the individual contributor.
If a manager just says "simplify the code!" and leaves it at that, usually nothing happens because,
- they're not being specific enough,
- they don't necessarily have the knowledge required about each individual piece of code in order to be that specific, and
- part of understanding the problem is actually going through the process of solving it, and the manager isn&apos...