by Bugayenko, Yegor
TL;DR Compound variable names, validators, private static literals, configurable objects, inheritance, annotations, MVC, dependency injection containers, reflection, ORM, and even algorithms are our enemies.
This is the second volume in the series of Elegant Objects books. It is recommended that you read the first volume first.