Whatever happened to self-service computing?
The administrator lives on
According to Gartner's Emerging Technologies Hype Cycle for 2012, cloud computing has passed the peak of inflated expectations and is heading for the trough of disillusionment at full speed. Cloud computing didn't live up to the overblown hype.
We have to get over the disappointment before we start to rationally accept the benefits that cloud can bring. Among the under-fulfilled promises, self-service stands out as one of cloud computing's least adopted features.
This is a shame: self-service has helped drive down costs in many other industries. Automated retail spans from vending machines to Redbox to the common gas station and has lowered the cost of provisioning goods around the world.
Self-service government initiatives have lowered the cost of everything from licence renewals to open data access. It is easy to see why there is such enthusiasm and hype over what self-service could do for IT.
The end of tyranny
It is not hard to explain why self-service shies from the limelight. The first reason is fairly straightforward: a lot of different components have to be put into play to get a proper self-service cloud working.
There is hardly a glut of virtualisation administrators with the requisite 10 years’ experience in a five-year-old technology stack, so a lot of companies are "waiting for the technology to mature".
Self-service was sold as the technological hammer that would break departmental dependence on IT. No longer would the IT department be the gatekeeper to resources: end-users would simply create and destroy entire virtual infrastructures with the push of a button or two.
Public cloud, private cloud, it didn't matter: self service would free the end-user from centralised IT tyranny.
That didn't quite work out. You will find few end-users playing with virtual infrastructure. Those making use of cloud computing are systems administrators who already have a solid grounding in the theory behind what happens when they push a given button.
Cloud computing was to be so simple it would abstract the difficulty of IT away from end-users. Today we are seeing an increase in companies that offer to abstract away the difficulty of managing cloud computing. Where did this all go sideways?
The vision thing
End-users enjoy self-service all the time. They hit Outlook.com or Gmail for an email account, create a personal blog on Blogger or Wordpress or create a locus for egocentric inanity on Twitter.
In the truest sense of the concept, this is cloud computing: software as a service (SaaS) running on a distributed, virtualised infrastructure abstracted from the end-user.
The problem is that only a handful of these services are anywhere close to consumer-ready. Even Office 365 and Google Apps – the business email offerings from Microsoft and Google – cannot yet be administered by an end-user.
Managing groups of users still requires a systems administrator with an understanding of the underlying technologies, and these are among the best, most polished examples of SaaS on offer.
This has been true since computers were created. It’s the apps, stupid
SaaS may be the end-goal of cloud computing but ultimately the value of any SaaS offering will rely on the vision of the application developer. Adoption of cloud computing has nothing to do with the underlying architecture; the end-user cares only for the quality of the application on offer.
This has been true since the first computers were created. It's the apps, stupid.
That isn't to say that cloudy self-service has not proved useful. Infrastructure as a service (IaaS) and platform as a service (PaaS) are the nuts-and-bolts self-service elements of a cloud infrastructure that underlie SaaS applications.
Instead of liberating end-users from IT's clutches, IaaS and PaaS have been used to make operations and development more efficient. End-users don't care about cloud computing, but IT practitioners should.
IaaS gives IT a fighting chance of providing good uptime. IaaS is all about layering quality management software on top of a hypervisor (or top-notch metal imaging system) to ensure that IT services are redundant, resistant to hardware failure and as highly available as the resources at hand will allow.
Adoption of IaaS is growing. The tools to do this in-house are getting better and we are gaining experience with these technologies.
Companies are beginning to move workloads into the cloud. Demystification leads to familiarity, which eases fear.
We don't usually think of IaaS as a self-service chunk of cloud computing. We rarely enable the chargeback functionality in our management software and the provisioning is still overseen by IT. Perception aside, our daily use of virtualisation management tools and our increasing use of automated virtual private servers are self service. We use IaaS every day; we just don't think of it that way.
PaaS has a far more storied history in IT. The basic concept is simple: create a "known good" environment for your developers. Make copies of it so that they have alpha, beta and production environments. Do patch-and-change management and make sure you can provision new server stacks – operating systems and their relevant applications – on demand.
We have been doing this PaaS thing since way before it was called PaaS. We just generally didn’t let the developers spawn their own instances; they still had to ask IT.
Today, developers are spoilt for choice. They can work with in-house IT to get a PaaS on a private cloud or use any of umpteen public cloud offerings or a mixture of both.
All in the mind
Despite the availability of the technology, we don't seem to take advantage of it much. PaaS is around in numerous forms and yet most developers I know would still prefer provisioning, configuration and maintenance to be taken care of by IT.
Even if most of that is automated and provisioning has been reduced to filling out a form, there is a psychological barrier there that is hard to overcome.
The same is true of attempting to push IaaS out to the world. IT loves the idea but there aren't a whole lot of end-users racing to deploy a Windows Server instance so they can install the latest financials package. That's IT's job; users just want the problem to go away.
Our tools and technology have provided automation and standardisation of our working environments. Orchestration packages have helped us automate complex workflows for creating and destroying intricately joined-up instances of interdependent software stacks. We can do it all through a push-button web form now if we choose.
In the end, however, we still have the desire to understand what we are doing when we hit that button. What are the details of the storage, networking and virtual environments that we provision?
How do they interact with – or how are they isolated from – other environments that share the same infrastructure? Is this secure and is it good value for money?
Business worries surrounding cloud computing can include everything from value for money to regulatory concerns. The penultimate question is: "Am I doing it right?" For now, end-users cannot reasonably answer that. Systems administration retains a skilled labour requirement.
Self-service (and thus cloud computing) is not as was once promised ultimately about empowering the end-user. It is about doing what we did before more efficiently. The rest will come. ®