Flexibility Versus Customization
March 19, 2012These are certainly not polar opposites, but in software, they are more than often opposed to one another.
Say a requiest comes in that someone wants to throw up a new random page on your site that you’ve made. Does that page fit a template you’ve created? Does it fit within the global styles you’ve decided upon? Is it something the custom CMS you’ve built doesn’t support? Or a case where one page doesn’t conform to the exact specifications to pages similar to it, but with different content?
This often means that you’re current solution isn’t flexible enough and will need to be extended to fit with these new requirements.
On the other side, you’ve created a very simple CMS that allows anyone to put in the HTML they desire onto a page. Perfect! You’ve got all the flexibility in the world!
But they want that page to have data that conforms with another 50 pages at all times, and they can’t spend the time updating those 50 pages whenever a change happens. Now you’re in a pickle be ause there isn’t enough customization put into your software.
So, how do you get around this? Sadly, it depends on the particular problem you’re solving, but I, having wasted time in the past building custom software, think that flexibility usually wins out – it means less development later, though it often leads to more administration later, a trade-off that can lead to delays, but usually leads to savings also.