Not like breathing

In the current Business Week, Steve Hamm writes about the state of what’s come to be known as “autonomic computing.” The term was coined a few years back by IBM’s Paul Horn, in a paper called Autonomic Computing Manifesto, and Hamm does a good job of distilling Horn’s idea:

Scientists needed to come up with a new generation of computers, networks, and storage devices that would look after themselves. The name for his manifesto came from a medical term, the autonomic nervous system. The ANS automatically fine-tunes how various organs of the body function, making your heart beat faster, for instance, when you’re exercising or stressed. In the tech realm, the concept was that computers should monitor themselves, diagnose problems, ward off viruses, even heal themselves. Computers needed to be smarter. But this wasn’t about machines thinking like people. It was about machines thinking for themselves.

I contribute a brief quote to Hamm’s article, though I have to admit to being a little ambivalent about “autonomic computing.” It’s not that I have any problem with the concept of simplifying and automating many of the basic computer operations that today tend to be highly complicated, requiring a lot of manual intervention by people. That shift is necessary and, I feel, inevitable. What bothers me is the term “autonomic computing” itself. It’s a bad metaphor.

The real power of the idea is not that computers will run themselves, in the way that the autonomic nervous system runs itself. Rather, it’s that, by automating many of the lower-level computing chores, like allocating computing, storage, and network capacity, setting up new applications, metering usage, and so on, people actually gain greater control over the systems. We become able to program the way the systems work at a higher level, establishing the criteria, for instance, that determines how different computing jobs get prioritized based on our company’s business needs.

We don’t want computer systems to breathe by themselves, in other words. We want to be able to tell them exactly how we want them to breathe, to be able to set and adjust their “heart beat” to suit our own requirements. Automating computing is – or should be – all about giving people, not machines, greater control.

6 thoughts on “Not like breathing

  1. Bill Higgins

    I disagree with you that autonomic computing is a bad metaphor. You’re able to write this blog entry because your body is doing lots of complex work (breathing, fighting hostile microorganisms, etc.) without requiring you to spend “concious brain cycles”. Likewise *one* of the goals of AC is to allow IT organizations to focus on higher-level concerns while being able to rely on the software to sort out many more of the routine work and even exceptions to the routine work without the intervention of an sysadmin / ops manager / executive. Less human intervention with these lower level concerns is an enabler to focus resources on higher level concerns like business process / service monitoring, analysis, and refinement in future dev cycles.

    I think one of the sources of our disagreement is that we’re in marketing term / buzzword no man’s land. The higher-level concerns you speak about I think we (IBM) would market under that ubiquitous buzzphrase “service-oriented architecture”, so if you still think AC is a bad metaphor, as an engineer who doesn’t get too worked up about marketing terminology, I’m happy to agree to disagree :-)

    PS – For some more good background info on AC, check out this issue of the IBM Systems Journal (A tad old by IT industry measures, but the core concepts should still be relevant):

    http://www.research.ibm.com/journal/sj42-1.html?Open&ca=daw-ad-dr

  2. Vinnie Mirchandani

    Be interesting to see how the undustry prices the self-healing enhancements, even as US and offshore vendors start to offer remote infrastructure management services. On a trip to Bangalore a few months ago, I saw HP’s impressive offerings around network, storage and other management. That pricing reflects labor arbitrage and shared economics across multiple clients.

    Also if the industry can cannibalize this type of systems management labor, why can it not do so around its own systems integration services? There are so many “low-level” services around testing, data conversion, integration, training and other areas. By my estimate, every dollar in SAP or Oracle license costs between $ 7.50 and 21 in external labor over a 10 year cycle to implement and maintain. Could it be that IBM and others do not want to cannibalize their sizable services revenue (half of IBM’s revenues) – or they are waiting again for stiffer competition from Bangalore?

  3. Bill Higgins

    Vinnie wrote:

    Also if the industry can cannibalize this type of systems management labor, why can it not do so around its own systems integration services?

    I think the short answer is because systems integration is a much harder problem than systems management. In the world of systems management we’re talking about well-defined concepts like nodes, network addresses, memory, and storage. In the world of systems integration we’re talking about amorphous concepts like “what constitutes a customer, an account, an order, etc.” across different development teams, different intra-company lines of business, and across enterprises. Throw into this mix older systems whose source code is written in a legacy dialect that not too many people use anymore or has been lost entirely. Throw into this mix the constant desire to enhance or fix the applications that are the end points in the systems integration effort, resulting in an unstable base.

    Now I know the normal IBM consultant response to this is “service-oriented architecture” is the answer, and, hype aside, it does help with some of these problems by hiding the underlying nastiness of custom applications behind well-defined service definitions. Now the big unstated assumption in the previous sentence was “well-defined service definition”. Quality service definition takes real skill, and this is where you need an experienced designer – whether in Boston or Bangalore – and experienced designers don’t grow on trees. If companies think that SOA is the way to go, they’ll have to hire a few savvy service designers, whether as a regular employee or as a high-end consultant from firms like IBM Business Consulting Services, Accenture, Thoughtworks, etc.

    Re:

    waiting again for stiffer competition from Bangalore

    I don’t really agree with your characterization since IBM’s made sizable investments in our own services and R&D labs in lower-cost countries like Brazil, China, and India over the past 5-10 years.

  4. Charlie E Bess

    I view the concept of autonomic a little differently. It is allowing the computers to focus on the mundane, “normal” world, while freeing up the people to focus on taking advantage of the unique.

Comments are closed.