What's bad is code exhibiting multiple fragmentary inconsistencies,
and no plan or effort exists to bring older code up to match the new patterns.
An example I was closely involved with:
A java programmer who wrote a plethora of new code in a pure functional paradigm,
scattering Vavr library uses all over it.
The existing code was built on Dropwizard
and any experienced Java programmer could rapidly get comfortable with it.
The difference between the existing code and the new was jarring (sorry for the pun) to say the least,
and I wonder if, later, the company ever managed to recruit anyone who understood both well enough to maintain the system.
ETA: upon reflection I'd consider that programmer a canonical example of the kinds of mistakes the author covers in the article.
ETA: upon reflection I'd consider that programmer a canonical example of the kinds of mistakes the author covers in the article.