This past Thursday I became aware of David Linthicum’s Cloud Computing blog over at InfoWorld for the first time as a result of an email that was promoting a blog entry he wrote earlier this week. In that particular blog entry he warns why a shortage of cloud architects will soon lead to “bad clouds.” That’s interesting because I did not realize that the industry had really settled on what defines a “good” or a “bad” cloud.
As an individual who first majored and received an undergraduate degree in Theology before getting a second undergraduate degree in Computer Information Systems, the concepts of “good” and “bad” have always intrigued me.
You would think that having a degree in Theology would result in me believing that the lines between “good” and “bad” are pretty much black and white. Yet what I concluded from my studies is that while the Bible clearly defines some behaviors as “bad” or “evil” and others as “good,” there are a far greater number of behaviors (I would say an almost infinite number) that it deems as “acceptable.”
These lessons as to what constitutes “good,” “bad” and “acceptable” in the spiritual realm have had an interesting carryover into the computer realm. Once I got into the world of computer science, I found most of my colleagues define computer architectures in terms of “good” and “bad” (though they may use terms like “smart” and “stupid” to describe them.) For example, I find many UNIX folks consider Microsoft Windows a curse that mankind is forever doomed to suffer under while mainframe folks look at today’s distributed computer solutions as “tinker toys.”
Unfortunately it just is not that easy to look at a particular computer design and then label it “good” or “bad” (or “smart” or “stupid” as the case may be.) The same holds true when creating a cloud. After all, how can you create a cloud and holistically classify it as “good” or “bad” when each company’s definition as to what a cloud needs to do or provide may be different?
By way of example, here are a few attributes as to what I would define as a “good” cloud providing:
- Appropriate service levels for each application
- Data mobility
- Data protection
- Ease of management
- Flexibility to independently scale capacity – memory, networking, processing or storage
- Uninterrupted service
So assuming you agree with me there is a lot of room for interpretation as to how each of those features is delivered. Consider data protection. Data protection can be delivered in a multitude of ways – snapshots, traditional backup and replication just to name a few.
So are two of these forms of data protection “bad” and the other one “good”? Or do all of these forms of data protection fit within the spectrum of “acceptable”? I would argue the latter but it really depends on what the business wants to accomplish.
Even then, the business may not be (and likely is not) aware of all of the data protection options available in the market. As such, they are likely not going to have the “best” data protection solution as analysts like myself may define it and consider “good” implemented in their environment. More than likely they are going to have a solution that is “acceptable” to them.
Organizations should also not think that they can turn to vendors or solutions providers in anticipation of getting the “best” cloud available either. Vendors are typically limited to offering whatever solutions they have in their portfolio while solutions providers are motivated by a variety of incentives not the least of which is which of their providers is giving them the most incentive to sell their technology.
While I certainly do not think few if any solutions providers would purposely deliver a cloud that does not work (a “bad” cloud) if they can deliver an “acceptable” solution while making some extra money in the process, who is to fault them?
Defining any particular cloud design as “good” or “bad” is a risky proposition. If anything, the only clouds that are easy to define as “bad” are those that provide little or no business value or simply do not work. Conversely classifying a cloud “good” may be as simple as a cloud that works and meet the needs of both the business and the requirements of the IT staff that have to support it.