Cloud computing is one of those operations models that has already started to disrupt the way in which everyone consumes software.
It is also starting to have an effect (albeit tiny right now) on the way in which people and organizations consume (or don't consume) hardware. Cloud computing has become a part of the core information technology "fabric" of many.
Cloud computing does, however, generate more than its fair share of disagreement and debate. Vendors, customers, bloggers, twitterers, and even consumers have spend many thousands of hours, hundreds of thousands of words, and millions of dollars trying to convince the world that their view of cloud computing is "the one." Meanwhile, thousands of other very smart people are questioning the core assumptions on which cloud computing's value proposition rests.
You would think this dissent would be detrimental to the adoption and growth of cloud computing, but it's not. Partially that's for the relatively lame reason that every new definition and every new "must-have" feature expand the possibility of what cloud computing is...thereby growing the term "cloud computing" through a sort of linguistic acquisition strategy.
However, it is also in part due to the fact that these debates are spurring a huge amount of brain power to focus on some really difficult-to-solve cloud-related problems. The tension created by disagreement and debate in the cloud computing marketplace is spurring entrepreneurs, vendors, and even individuals to achieve their independent visions of what could be. Tension drives innovation, in this case.
Let me give you three examples of what I am talking about. These are probably the three most important examples of how disagreement is driving technology road maps industrywide. Some of these disagreements are clearly self-serving--established systems vendors protecting their markets while enthusiastic entrepreneurs attempt to redefine the markets outright. Some are just different ways of seeing the same subject, but with profound effects on the choices made by vendors and individuals on each side of the debate.
Consumer and small/midsize business versus enterprise
One of the biggest sources of tension among those that debate cloud computing definitions is the difference between the needs of individuals and small/medium businesses (SMB) versus those of their larger enterprise counterparts.
The former is looking to minimize cost and complexity as much as possible by eliminating the need to own things. Consumer/SMB is a market in which providing service through standardized devices reigns supreme, and the requirement to own anything other than basic access devices--laptops, Netbooks, smartphones, and the like--is detrimental. This marketplace sees the issue as outsourcing as much information technology as possible and is willing to place a high level of trust in providers to achieve that.
Enterprises, however, tend to be much more concerned maintaining their existing investments in IT while gaining a return on investment for new spending on new technologies or processes. A tremendous amount has been spent on making IT a trusted resource (though clearly with mixed results). Enterprises won't move forward on cloud unless they can maintain that level of trustworthiness without excessive expenditure.
So the consumer/SMB market is trying to drive the enterprise towards pure IT as a service, and the enterprise is trying to get cloud providers to up their game in security, control, service levels, and compliance. All are very good for cloud customers as a whole.
Public cloud versus private cloud
Closely related to the problem of how to run IT is where to run it. And by running it, I don't necessarily where the hardware is running, but where controls that define "the cloud" are maintained. Who owns the systems that manage the cloud and that define things like access rights, available software images, and network service configurations?
This is essentially the heart of the debate about how much service is provided by IT--how much cloud must be on the Internet for it to be cloud. Those who believe "private clouds" are unnecessary generally believe that you can get everything you need from your public cloud provider. Take Amazon Web Services, for instance. Using its console, its messaging infrastructure, its data stores, and so on, many developers are arguing that there is little reason to build and operate new applications anywhere else.
The argument for private clouds, however, is generally based on the risks inherent in external public clouds--things like lock-in, data ownership, regulatory concerns, security, etc.--as well as the alleged ability of private clouds to provide a smoother migration path to external clouds than going straight to public clouds today.
So, the public cloud crowd is pushing internal IT and individuals toward using third-party services to replace capital intensive IT, while the private cloud crowd is pushing cloud service providers to see interacting with existing IT infrastructure as an enabler for cloud adoption. Again, both are good for cloud customers.
Open source versus proprietary
While the previous two arguments have been about how and where to operate IT, this debate is a little different. It is about software technology, and it is actually about much more than cloud computing. On the surface, it's the same old "free versus commercial" debate. But when you dig down from a cloud perspective, you find nuances that will be critical to the future form of the cloud.
You've probably read about the debate regarding whether cloud computing is the logical conclusion of open source. Many open source companies note that in order to profit from open source, they must be exceptional service businesses. As cloud computing is all about service delivery, it is a natural model in which to sell open source services.
That argument, while critical, isn't the whole story, however. The other side of the coin is the debate about whether one can build competitive cloud services using anything other than open source. Most of the leading clouds available today are heavy users of open-source software, and many of the most compelling server images in Amazon's image library are based on open source.
Folks like Microsoft and VMWare, however, would beg to differ and are working furiously to prove to the market that their value add is worth the cost of their software. The argument is that these companies can pay for innovation and for a partner ecosystem that drives new business and have the customer relationships to work through long-term cloud deployment issues.
Here, the open-source community is playing a critical role in driving a new business model for software delivery (free software, for-fee service), while the so-called "proprietary" platforms are building ecosystems that push open source to continually reinforce its value to developers.
In the end, while I have preferences in each of these debates, it is impossible to declare any winners at this point. And that is good, as our constant testing of each others' principles will lead to an ever-increasing richness in cloud computing offerings for years to come.