I see so much over-engineering in my work while I work in the IT field. People have decided on products based on sales people coming in, showing a fantastical presentation, and then get sold on a product that will meet their needs (with the promise of having enough features to make it "future-proof"). In some instances, this may work. In many it fails.
In times like this, I reflect on an article which was written back in 2005 to address allegations that open source cannot compete with proprietary enterprise ready applications (usually the ones that are over-engineered) - Ryan Tomayko's article: IBM Poopheads: "LAMP Users Need to Grow Up".
I suggest that all decision makers in all organizations, regardless where you are on the corporate ladder, has a read of the article and draws their own conclusions. Have a read of the attached comments, and feel free to voice your opinions either there or on this blog.
And so I fled into the wilds of Tasmania to run a book shop. Over engineering, seems to me to make us slaves to the outliers, the one in a million transactions. Much better to create a simple system with rigorous error checking to capture the outliers, and deal with them separately (even if this means a manual solution!) As to future proofing, short of working with the FSF model, how can you future proof arbitrary proprietary software changes? It is all a shell game to bind an organisation to a supplier. More like master serf relation than client and supplier.
ReplyDelete