Saturday, September 28, 2013

OverEngineering

I am working in a project in which every participant tends to over-engineer its part.
Most of the guys are quite young and they want to impress with their design pattern skills - which is not bad at all if they would choose the correct DP for the problem tackled - but somehow they miss the goal of some DP and apply them in every possible situation only to have the usage ticked.

Then there are some expert developers or ex-engineers that are now trying to apply the dev-ops paradigm. So they are always trying to create something that CFEngine and Puppet or Chef are already doing. It literally paralyzes my mind when I assist to some discussions about reinventing the wheel. They are - with all respect to their development skills - illiterate sysadmins and they do not want to read about existing proven working solutions and try to resolve everything by  themselves.

That's not okay in my opinion because there are so many corner cases that one can miss with an in-house solution. Any of the above tools does a better job on the long term than a custom made solution by the fact that it is extensible and there is documentation about it - while the in-house is quite a black box brainchild of a excellent dev/terrible sysadmin.





No comments:

Post a Comment