9/28/2009

On Less is More

Thelonius Monk once said “Wrong is Right”. I say, “Less is More”. All too often we as software developers do data collection of one sort or another, often storing results in a database table or tables, and we suffer from self-induced overkill.

We collect too much data, data that we probably will not need. Or, instead of storing the same data and simply updating it’s count on a unique column value via an Insert or Update SQL statement, we end up storing hundreds of unique rows that, because of the data collection overkill we’ve engineered, take up lots of space but don’t really contribute to the “cause”.

In addition (and I have certainly been guilty of this) we store our data in database tables that are not normalized, thereby exacerbating the situation. We end up with wide tables with a lot of columns that are inefficient.

It is often much easier (and simpler) to start out with a minimalist approach. Less is More. If we determine at a later point that we actually do need “More”, we can always add that later. I believe it is easier to add needed features to a well-thought-out basic design than to remove stuff later. It’s human nature.