Even as a very grey bearded dev I love articles like this. Is it "basic", it sure is, and right on every count!!<p>"Unexpected side effects" is one of my pet peeves (No magic!!!).<p>Its a sin on two counts, bad design and a "linguistic antipattern"
Except it should probably be called <i>semantic identifier antipatterns</i> because the subset of language that has to do with <i>meaning</i> is the essential idea.<p>By choosing identifiers wisely combined with reducing cyclomatic complexity by describing actions with specific semantically-correct meanings, the amount of required comments and documentation to support a codebase properly can be reduced to essential familiarization material, defining of terms where needed, gotchas, and the explanation of specific engineering decisions and complex code.