I don’t know about you, but I’m somewhat confused about all the hype over “cloud computing”. Don’t get me wrong, accessing services on the Internet makes sense, sometimes. What I don’t understand is how many people tout cloud computing as the silver bullet for all of our IT ills; you know, the way virtualization was supposed to solve all of our problems? That will be a different post. Back to the point. The Web 2.0 Journal has a nice enumeration of the benefits to cloud computing. First I’d like to comment on these benefits.
What the vendors tell you
“Reduced Cost – Cloud technology is paid incrementally, saving organizations money.“
My comment: It depends on what cost your talking about. Making use of hosted services provides a cost-effective way to start initially deploying a capability to your organization. However, it’s like renting an apartment vs. buying a house: you never stop paying rent. The service fee is a constant monthly expense that never goes away. Need a second service? There’s another monthly fee. The problem of course is that you never actually get ROI with this model. It’s more like a reverse ROI. You start out ahead of the game because you had few start up costs. But after a few months, you get further and further behind, because at some point you’ve paid as much in service fees as it would have cost to do the implementation in house. And you keep on paying. Indefinitely.
Check out my post on getting started with SharePoint on the cheap where I show how you can get started with SharePoint in house for $1100, with no recurring costs. That setup will support between 500 to 1000 users and provide over 100 GB of storage. Comparable hosting plans would cost between $55-$80 per month (more if you exceed the small amount of storage that comes with most plans by using document versions). That means that the in-house implementation of SharePoint would actually come out cheaper than the hosted option somewhere between 14 to 20 months. ROI within 18 months is considered good in the industry.
“Increased Storage – Organizations can store more data than on private computer systems.”
My comment: Storage is cheap. In fact, storage is one of the cheapest IT commodities you can buy today. You can get 4 TB of business-class storage for under $6,000. Compare that to a hosted SharePoint service offering with only 1 TB of storage for $4,000 per month. What IT commodity is significantly more expensive than storage? WAN bandwidth. Cloud computing model uses WAN bandwidth like it’s going out of style. See the “What the vendors don’t tell you” section of this post for more on the topic.
“Highly Automated – No longer do IT personnel need to worry about keeping software up to date.”
My comment: There is an obsessive compulsive disorder in IT circles called “software updates”. Many administrators think that they need to apply the latest hot fix or service pack the moment it comes out. It’s ok to talk about it. I had this problem too. Do you know what I discovered happens if you don’t apply most of these updates? Absolutely nothing. Servers keep running. In fact, by not applying the latest update you mitigate the risk of that update breaking your application. So, while letting the hosting provider keep the software up to date is nice, it is of questionable business benefit and can lead to misbehaving applications or unexpected downtime.
“Flexibility – Cloud computing offers much more flexibility than past computing methods.”
My comment: I have a few thoughts on this one. First, while cloud computing can provide more flexibility, more flexibility is not necessarily better. If an in-house system has enough flexibility, adding more flexibility may not offer any business benefit. Second, the most inflexible part of an organization may be the people. Every time you something in IT changes, users need to get retained. That training is time consuming and costly (time = money) . Third, Has anyone asked why there is a need for so much flexibility? Could it be a symptom of poor planning? Why not deal with the problem’s root cause rather than the symptom?
“More Mobility – Employees can access information wherever they are, rather than having to remain at their desks.”.
My comment: This is great, but you don’t need to have your service hosted in the cloud. Get an Internet domain name and a DNS service like No-IP Plus ($25 per year). You can make your in-house web application Internet-accessible in less than an hour.
“Allows IT to Shift Focus – No longer having to worry about constant server updates and other computing issues, government organizations will be free to concentrate on innovation.”
My comment: See my comment in the “Highly Automated“ section for my thoughts on chasing server updates. We have AD, Exchange, SharePoint, SQL Server, and TFS in house, and have no full-time IT support personnel. How do we do this? By keeping our filthy hands off of the servers. Best of all, we don’t need to pay hosting service fees for the privilege of not touching the servers. Not monkeying with existing servers allows us to focus on delivering new capability.
Next I’d like to add a one more item people often attribute to hosted systems and comment on that item: “Increased reliability”. There a general feeling that service providers in the cloud can do a better job of ensuring system uptime than other organizations can. In some cases I think this is true, especially when taking about specialized hosting companies. However, many cloud service providers do not fall into that category. Remember the now infamous T-Mobile Sidekick data loss incident? I guess “carrier-grade” doesn’t mean what it used it. There is no guarantee that a service providers will do a better job of ensuring service reliability than you will.
Along the same lines as service reliability is “service availability”. While service reliability refers to the service running, service availability refers to users actually being able to get to the service, two completely different things. When the service is running on the same LAN as the users, service availability pretty much equals service reliability. I.e., if the service is running users can most likely get to the service. It’s a different story when the service is running in the cloud and users need to access the service over the WAN. Lets face it, Internet connections go down. Speeds fluctuate. Granted, downtime for this reason doesn’t happen often, but when it does things can be very frustrating.
What the vendors don’t tell you
Now I’d like to point out some of cloud computing’s dirty little secrets. Few people in the industry talk about these, and customers don’t find out until after they’ve signed a 1-year contract.
Single sign-on
Single sign-on (SSO) is the concept that a user has to enter his or her credentials into one system, and that the credentials would get propagated into all other systems that the user needs to access. For example, a user would login to his or her desktop computer and would be able to access the organization’s email and portal systems without additional logins. For most organizations running Microsoft software in-house, this is a daily reality because all of the organizations systems are running off of the same user directory service, the organization’s Active Directory. But what happens when the organization makes use of the hosted service in the cloud? That service has its own usernames and passwords. Users now have an additional login for the hosted service. Web browsers can help by caching user credentials on their desktops, but there are other desktop applications that don’t do as good a job with that. The issue multiplies as the organization adds additional services, each service requiring its own username and password.
WAN vs. LAN bandwidth
How much bandwidth do most organizations have on their LANs? Most have 1000 Mbps. How much bandwidth do these organizations have on their WANs? Usually less than 10 Mbps. That means that most organizations have roughly 100 times the bandwidth on the LANs as no their WANs. That’s important since the organizations’ users access cloud services through the WAN. Users will perceive even well-implemented cloud services as being much slower and unresponsive as compared to mediocrely implemented in0house services. The cloud service is slower, the problem lies with the users’ limited bandwidth in accessing the cloud service.
WAN vs. LAN reliability
How often does your LAN go down? How often does your WAN go down? Imagine losing access to all of your organization’s services in the event of an Internet connection loss? More is available in the previous section of this post titled “service availability”.
System integration
One of the best outcomes to increasing numbers of software vendors’ adoption of open interfaces and API standards in their software is customers’ ability to make the systems their organizations rely on to operate as a single system, rather than a collection of desperate applications. New business capabilities like business intelligence were now possible. What if an organization wanted this capability but relied on hosted services for some of its systems? Let’s say that an organization had an internal Active Directory and mail system, but made use of one vendors hosted ecommerce service and another vendor’s hosted CRM service. Seems reasonable so far? The organization wants to to answer a simple question: how many customers who have purchased from the organization within the past 6 months have emailed their sales representative directly after a purchase? This question requires data from the AD, email, ecommerce, and CRM systems. Getting to that data is hard, because the CRM and ecommerce systems must be accessed over a WAN connection. This makes the processes of getting to the vast data the systems hold very painful. We also hope that there is some way to correlate the various data entities between the systems: orders, customers, email addresses, sales people, etc.
Conclusion
There’s a lot of buzz about delivering software as a service (SaaS). I think that SaaS / cloud computing / utility computing will definitely be a good delivery model for some types of computing capabilities. But, there are just too many benefits to running services co-located with users to make locally running services go away anytime soon. My colleague, Brad Smith came up with a much better alternative to either model: localized software as a service (LSaaS). Briefly put, the LSaaS software delivery model makes use of hosted services as a pure SaaS model does. However, rather than users accessing a hosted service directly, the LSaaS model places an extension to the hosted service into an organization’s office. Users access the service local extension over the LAN. That service extension may communicate with the hosted service in the cloud on an as-needed basis. See my previous post on how an LSaaS software delivery model can simplify software licensing and copy protection while avoiding the pitfalls with a pure SaaS delivery model. I believe that more and more vendors will start using the LSaaS software deliver model in the next few years.We certainly will.