I was talking to some colleagues the other day about the happenings in the world of cloud. Specifically, we were talking about a few different enterprises we worked with that had recently adopted cloud computing. As we talked, we seemed to hone in on the adoption path. Specifically, what group within the companies we worked with had been most responsible for the cloud adoption decision? Was it a group typically responsible for enterprise solution adoption, or were we seeing a fundamental change in how these types of companies made purchases? As we began to unravel the thread that led to the choosing of the particular cloud solution in each case, everything pointed back to a common group: the developers.
I am sure many of you read that, and think, ‘No kidding. Developers are the decision makers now.’ While I agree that it has been clear for some time now that developers play a significant role in the usage and evolution of cloud computing, that is a completely separate notion than saying developers are leading adoption decisions regarding cloud computing. That said, I believe the evidence is incontrovertible and can be found far beyond the handful of use cases that me and my colleagues were discussing. I would wager that if you asked ten companies that were working with cloud computing what group was the strongest influencer in the adoption of their cloud solution of choice, eight would say developers. It is simply the way of the cloud computing world. With that in mind, let’s examine some cloud solution characteristics that are important if service providers want to engage enterprise developers.
The first and perhaps most important aspect in delivering a developer friendly cloud solution is quite simple. It’s the APIs and interfaces! I don’t care what kind of cloud solution you are delivering or where it is classified in the delivery spectrum (IaaS, PaaS, and SaaS), you better make your solution ‘callable.’ This is extremely important for developers because it enables so many things. It allows them to automate the use of the cloud solution. It allows their tools to communicate with the cloud solution. It allows them to mix in the cloud solution with their existing development processes, such as continuous integration testing of their application. Without APIs and interfaces, your cloud solution won’t attract many developers and ultimately it won’t attract many users.
In addition to APIs and interfaces, consumability is another important aspect of developer-friendly cloud solutions. Now, you may say that consumability is important regardless of the group in question, and I would agree. However, I believe it is even more of an imperative with developers. I mean, have you tried being an enterprise developer lately? You have to keep up with existing and emerging programming models, evolving application runtimes, new development tooling and more. Further, you have to understand all of these capabilities in the context of the business. After all, it does no good to know all of this if you cannot put it to work for your company. Therefore, I would encourage cloud service providers to keep it as simple as possible. Complexity should be the exception and not the rule!
Finally, for a cloud solution to attract a development following, it must be largely open and interoperable. If you follow the buzz around cloud, you probably hear many analysts and other independent observers call for openness to assuage any enterprise concerns about vendor lock-in. Well, developers are part of the collective enterprise, and they are not immune to the concerns of lock-in. An impressively sharp group of people, developers know that what’s ‘now’ is not what is necessarily ‘forever.’ They would rather know that the time and effort they are putting into learning how to leverage a particular cloud solution will not be wasted if their company decides to steer towards a different direction. Open cloud solutions and especially open cloud application platforms are incredibly important in ensuring developers that the work they are doing now will translate quite well to other cloud platforms. Make sure you approach is one that embodies the notion of openness if you hope to pull in developers.
For many of you, I am sure all of the above is common knowledge at this point. For those of you that have been involved in the cloud wave for a while, you know that developers have been the driving force for some time. I also believe that this signals a need for a significant shift in direction for some companies that wish to be notable cloud service providers. We are living in an environment that is increasingly driven from the bottom up. You either adapt to this new order, or you risk seeing your long-term viability threatened!