"The answer is not to automate away the complexity but to..." Leonard Richardson, 2008 #readingToday
The answer is not to automate away the complexity but 1) to spread it around by splitting the complex thing into little pieces, 2) to reduce the complexity by treating things that are fundamentally the same the same way, and 3) to describe the differences between two complex things in a standard way, so that it's easy to get up to speed on one or the other.