Tim O’Reilly has another excellent post about the concept of “software above the level of a single device”. While most of his post is dedicated to famous consumer-oriented client/services offerings like itunes, if you glance around our industry it’s quickly apparent that the concept of “software above the level of a single device” is the predominant vision amongst leading business strategists and software architects. But once that thinking is translated into actual code, the care and feeding of those innovative services tends to look a like like decades old box-by-box thinking. Lots of hand-editing of configs, lots of manually maintained procedural scripts, lots of jumping from log file to log file looking to divine the root cause of a problem or outage, lots of pain and inefficiency everywhere.
As the elegance and distributed nature of business ideas and their resulting software has improved, the the prevalent thinking about how you support it surprisingly has not. Sure there are projects like ControlTier, SmartFrog, Puppet, CFEngine, etc. that deliver on the promise of a better way, but the collective thinking of the industry has a long ways to go before these kinds of solutions become standard. Maybe we need a catchy tagline to close that gap…. “Operations Above the Level of a Single Device” anyone?