Thursday, February 18, 2010

Consolidation, the Lost Art

While working with the Google AdWords API, I discovered a forgotten principle (or lost art) of software engineering. It is called “Consolidation”. This principle, I believe, must have somehow fallen through the cracks when people started talking about DRY, KISS, SRP, etc. But I believe it will revolutionize the way we write programs.

Up till now it was commonly thought that breaking logic apart into easily manageable pieces was a good way to build software. “Divide and conquer,” we said. We thought that having well-named, meaningful blocks of code was the best approach to take for creating flexible, maintainable applications. We always thought that two very simple lines of code would always be better than six that did the same thing.

We thought wrong.

The following description of “Consolidation” is taken from http://code.google.com/apis/adwords/articles/migrating.html#consolidation

image