Distributed IT is (definitely) broken

I have been working in IT for about 17 years now, 14 of which at IBM. Since the first day I was immediately exposed to the concept of a centralized IT where everything is fully controlled, fully secured, fully automated and easy to manage within the data center boundaries; on the other hand whatever sits outside of the server room should be dumb and wouldn't require any (major) maintenance tax onto the IT organization. For those that have been around for a while this exactly describes how a mainframe operates (more or less).

"Unfortunately" (you can speculate on the apexes if you want) I have built my career at IBM on something that sits exactly on the other side of the spectrum compared to the mainframe: that is the x86-based server business (was PC Servers, was Netfinity, was xSeries, is now System x / BladeCenter). That's why I have enjoyed, in the last few years, looking at the mainframes as the holy grail (or the polar star) where I'd like to push my "little" x86 servers.

So why is the distributed IT broken? Simply because I think businesses have sold their soul to the evil as they compromised things like control, security, automation and low costs of operations for the nirvana of flexibility and low acquisition costs that came with x86 servers (and PCs). And being this model a client-server model it has affected both the x86-based server portion of the data center as well as the (even more distributed) client environment. Client-Server here doesn't strictly pertain to the architecture of the applications but it rather pertains to the devices one will end up managing no matter what the application architecture is: the application of choice might be Web-based but at the end of the day most likely the IT organization will be running the web server on an x86 Windows or Linux box and the end-user browser will be accessed on a fully featured PC/Laptop running a Windows client OS. It's going to be a Client/Server world anyway no matter the application architecture.

In this brief post I just want to show a couple of proof points of this broken IT model. The first one is a screenshot of a "server" I found during a local customer visit. Ready? Fasten your seat-belt please:

Now, this is not a guess, this is for sure (I did ask) a Microsoft Software Update Services (SUS) "Server". While the first sticker (on the green bazel) says "Test..." the other one features a "NON SPEGNERE" that means "DO NOT POWER OFF" so those of you that are thinking this was a sort of quick and dirty trial on the desk... should be thinking twice about it. A couple of additional things you might want to notice are that this "server" was physically located on an office desk so it means that the x86-based portion of that data center basically left the actual physical data center rooms and has had ramifications outside of it (very scaring). The second thing to notice is that by no means this is a small SMB shop (I have seen production MAIL servers at those accounts that were even worse than this); no this is a big enterprise customer with many thousands of (actual) servers. Definitely if such big organizations are doing things like these, what's going on in "our" server rooms (and outside of them!) is pretty scaring to say the least.

So much for the server side of the things. How about the clients (desktops/laptops)? Do you remember those zero-maintenance 3270/5250 terminals we all used to access our AS/400 and mainframe programs? Well I took this other picture a few days ago and while it's not as scaring as the other above it tells a lot about where we have got with desktop/laptop management:

It literally says:


Distribution point for 1GB additional memory (RAM) to install Lotus Notes 8.0.1

The laptop needs to be Powered Off! Not Hibernated!!!


The scaring thing about this is that the organization going through this massive process has roughly 9.000 employees. If you compare this (little example) to the way a central processing unit with dumb terminals used to work you start getting the feeling about how much broken things are in the x86 (client-server) space.

Now I am 100% sure we won't go back to those days (nor I am suggesting that we try to do that) also because no one would want to give up with the GUI experience for a green character interface (how the h%&l can I watch YouTube on a 3270 terminal?) but yet clearly something needs to be done. The good news is that there are technologies that will allow IT organizations to do this and get to the point where they do not need to trade-off control, security and other important data center aspects to get the flexibility and experience end-users demand (and expect) in the 21st century.

Imagine... a world where your SUS "Server" will just be a service running in your server room (or someone else's server room out in the cloud) that doesn't require a "dedicated server" in your data center (and not even a dedicated desktop in the office - can you believe it?) and where your e-mail client update won't pre-req anyone to go to the office (and waste half a day) to get an additional 1GB of memory....

You may say I am a dreamer, but I am not the only one (where did I hear this?).