Why Complex Systems Don’t Always Equate to Effective Software
And why you shouldn’t judge the quality of code by the number of lines
There is a misconception that the number of lines or the complexity of code determines the completeness or quality of a system. However, writing code is like writing a novel — the number of pages doesn’t always indicate the quality, style, or a cohesive storyline.
In reality, a complex system is often indicative of a flaky system — something that no one wants, especially in the long term.
Software complexity is often the result of legacies, outdated best practices, cowboy developers, or a combination of these things. Complexity has more points of failures, exposing more surface area for vulnerabilities, and it also puts pressure on those that inherit the system.
Complexity is not a good practice, even though for many it is a state of normality.
Units of Measurement
Under normal circumstances, the productivity of a team is measured based on output.
In the physical world, factory workers are measured on the number of items they’re able to produce against the hour, a courier driver’s productivity on the number of packages they’re able to deliver in a day, and how…