It's been a while since I've blogged partly because I got some new responsibilities that took up much of my time over the past year and partly because I'm not inclined to post short meaningless entries - I use Twitter for that (follow me on http://twitter.com/robinmestre). As you may have heard, Microsoft has made its entrance into cloud computing, in fact it is one of the six major priorities Steve Balmer has set for our company - it is also one of the primary priorities of Ray Ozzie, who has taken the reigns from Bill Gates as chief architect for Microsoft. This strategy has enabled Microsoft to step ahead of its traditional competitors like IBM and Oracle into this new reality. It also means we have stepped into the realm of a new breed of competitors such as Google and Amazon, but unlike these new competitors who maintain that all apps should run in the cloud, Microsoft's approach is to provide our customers with the choice of deploying software on premise, as in a traditional software licensing model that our customers are all familiar with today, or the option of consuming this software as a subscription service, or a hybrid of both. We call this strategy Software plus Services (S+S).
Going forward you can expect more blog posts from me on the topic of cloud computing and our S+S strategy. I think these are exciting times because many believe that cloud computing is the next major computing platform, akin to the mainframe, PC, client-server, web and mobile platforms. There is a lot of hype and ambiguity surrounding cloud computing, which is to be expected from a nascent platform. There is a lot of terminology and new acronyms being thrown thrown around such as software as a service (Saas), platform as a service (PaaS) and infrastructure as a service (IaaS); another related concept is utility computing.
What is cloud computing?
In my mind, cloud computing encompasses all of these definitions with the following key attributes:
What are the business benefits of cloud computing?
The pay-as-you-go pricing model significantly reduces upfront capital expenditure for projects and shift was that expenditure towards operational expenses where the cost of the application is incurred as the benefits of the project are realized which results in better cash flow. It also lowers financial risk because if the company does not realize their return on investment, they would have not incurred the significant upfront capital expenses. The company's balance sheet also does carry the the hardware and software needed to support the application, which are depreciating capital assets, which in turn means that the company can lower return on assets (ROA).
Many cases most IT organizations are struggling to keep pace with the demands of their business users primarily due to the increasing complexity of managing their IT environments and this lack of agility has many business leaders questioning whether IT is a strategic business partner. The ease of provisioning new users and applications in a cloud computing and the ability to scale on demand increases speed to market and reduces opportunity costs due the inability of IT to deliver solutions quick enough to enable the business to take advantage of short term market conditions.
Finally, unlike traditional software where product cycles are measured in years, cloud services cycles are measured in months. The release cycle for Microsoft enterprise software is a major release every four year and an interim release every second year. The result is that our clients often skip releases because they are not able to justify the cost of deploying every release. This is unfortunate because customers do not maximize of the benefits of each software release and also means that they do not derive the full value out of their enterprise agreements - this shelf-ware is also a great concern to traditional software vendors. In the cloud services world it is not uncommon to have releases on a quarterly basis so that customers always have the most current software so that their employees can be more productive.
What's the trade-off?
The greatest tradeoff with cloud computing is that the service consumer does not have the same degree of control of the environment whether it be around upgrade cycles, features and capabilities of the environment, etc. The further up the stack you move, that is from a HaaS vendor to a SaaS vendor, the less control you have. Another oft recited challenge of cloud computing is data privacy since organizations are subject to local and international regulation pertaining to their customer data. This has resulted in many of customers demanding private clouds (on premise instances) or dedicated clouds (stand alone off premise instances). Thee are also technical challenges for moving applications to the cloud - depending on the cloud service provider, some applications can be moved fairly readily while others will require a significant re-architecture especially on hybrid on premise, off premise applications where issues like network bandwidth and latency come into play.
Summary
Cloud computing will have a significant impact on IT portfolios over the next few years as the business and financial benefits are very compelling and they come at a time where a weak global economy is resulting in a lot of scrutiny of IT budgets. It will be those IT leaders who relax their notions of control that will be the first to innovate and transform their IT organizations to garner the benefits this new era. Undoubtedly, this evolution will take many years and it's not unreasonable to argue that we will never see the total demise of on premise software, after all, how many mainframe and VB6 applications do you still have in your IT portfolio? However, a day will come when we look at the hundreds of millions of dollars we invest in enterprise data centers and ask: "What the hell were we thinking?".