I have worked in the I.T. industry for almost 30 years – well over half my life. In that time I have developed a number of principles that have served me very well. The biggest and most important of those is K.I.S.S. – “Keep It Simple, Stupid”.
Far too often, this simple and elegant advice is over looked, or intentionally ignored. Vendors present more and more complicated systems, designed to solve more and more niche-type problems. Systems to support systems. Servers to support other servers, that in turn support still more servers.
Microsoft is famous for this. Heck, Microsoft invented this concept. Leave it to Microsoft to take what could be a simple client-server architecture, and turn it into a complicated system needing seventeen servers and a SQL back-end.
Bunk. Don’t fall for it!
We as I.T. professional have to cut through all of this fog, and insist that we be offered simple, resilient robust systems that do the job they were designed for, and do not introduce unnecessary complications to our environments.
Too often it is those intricate architectures – that introduce complication for the sake of complication – that make troubleshooting problematic, if not impossible. Too often a vendor will take every single function their system must perform, and port it off to a separate server – requiring dedicated hardware and a separate license. License servers, logon servers, accounting servers, and on and on and on.
Often times “keeping it simple” is a lot harder than it might seem. With vendors constantly creating more complicated architectures, requiring more hardware (or more VM’s) and therefore more licenses, and more support – all to add to their bottom line.
Don’t fall for it!
We in the I.T. industry need to push back against this trend. Ask the question of your vendor – “Why are you using three servers for these three roles, when all three roles could live on one server?”
I recently sat in on a vendor presentation where I work. It was for a relatively small system (less than 25 users) for a small State agency. The system had a dedicated logon server (1), a dedicated license sever (+1), a dedicated database server (+1), a dedicated Web Server to serve up the application (+1) and an analytics server to perform analysis and run reports on their data. Then everything was duplicated across two data centers (+5) for a total of TEN servers, to host an application that would service 25 people. Almost a server for every two users.
This was a classic example of “Vendor Bloat” – where a company tries to sell you a system that is just way more complicated and involves way more ‘moving parts’ than should really be necessary to deliver the service. And of course, the vendor is more than happy to sell you an annual support contract to keep all these moving parts working.
Do not be afraid to resist this trend! Call them on it. Ask your vendor WHY they have designed their system to require so many servers. Make them explain WHY they architect-ed their system to be so complicated and difficult to maintain. You do not have to accept the status-quo!
The change starts with us. We in the I.T. industry must demand simple, easy to maintain systems that do not create complication for the sake of complication. As technology matures, we should be able to accomplish more and more with simpler and simpler systems – not the other way around.