Ask HN: What does "the Cloud" mean to you?
I keep running up against different definitions of "the Cloud" and was wondering if there is a right answer or at least a general consensus on what exactly the term means. When I say that our startup, IActionable, is in "the Cloud" I'm referring to our use of Windows Azure, MS's cloud, and the distributed nature of our service, meaning that we can elastically scale within the resources of MS's cloud and boast some level of stability like a large company while only having to pay for the resources we use. Apps running within Azure, Amazon's cloud, Force.com, Google's App Engine, or Rackspace's cloud are "in the cloud" according to this definition.
I've noticed, however, that many people say they are in "the Cloud" where they define the cloud as a server on the internet. Their thinking goes that since they store all the information remotely and there is nothing on the client's computer, their client-server architecture makes them "in the cloud". By this definition every server on the internet is a cloud, and every web app is in some cloud or another.
So is it one or the other? Is there some other definition that I'm missing out on?
58 comments
[ 2.8 ms ] story [ 114 ms ] threadI think it would be unlikely for one of my peers (mostly developers) to mention "The Cloud" unless they were trying to be intensionally buzzwordy for comedy effect. They would be more specific.
I/We would however say:
I like The Cloud as a common term to mean "Stored/Processed out there in the internet somewhere", not as a well defined technical term.Granted, you could say that ec2 isn't cloud... you could say that ec2 is a VPS system with a decent and fast provisioning API. Your definition would say that hiroku and google app engine are 'cloud' - something few people would argue with... it's just that most people call ec2 'cloud' as well.
This, I think, is why most technical people find the term 'cloud' to be useless... there isn't a strong and generally accepted definition that isn't so nebulous as to be not very useful.
Otherwise I'm worried we're going to see someone try to rebrand the internet as "the cloud" and then we're all doomed :)
Hell, maybe "cloud" will end up in the vague but useful category like "solution" I mean, sure, "solution" is even more broad than "cloud", but sometimes it seems more concise than "product or service" in a sentence, so it's still a word that I use sometimes.
To me, cloud would mean that the service has very good reliability, which your run of the mill "server on the internet" does not necessarily have.
Actually I'm less paranoid about it than that, but only slightly.
I have heard many people refer to the internet in general as 'the cloud', which I can understand, but I don't think of that as it's primary definition.
We at SFDC hear a lot about offers to businesses of "your own private cloud", which is essentially marketing jargon for something very un-cloud-like: running software locally, on your own servers, while you're completely responsible for the entire operation. It's a grossly disingenuous hijacking of the "cloud" terminology that I've found promotes confusion.
Most of the other responses here would match my own definition of the cloud: software, offered as a service, where all the underpinnings (data center management, software updates, redundancies, reliability) are abstracted away from you. The key is that you only need two things to access a cloud resource:
When I explain the cloud to people who don't read HN, I usually make a comparison to Gmail and MS Office. You access Gmail through your web browser, and there's no local software to download. When Google releases a new feature or a bugfix or a security patch, there's no action required on your end. You're simply up to date the next time you connect.Contrast that with MS Office, which comes on a CD/DVD, requires a local install process, and needs to be constantly patched for features and security. All of the work to maintain that software falls to you, the end user.
I think a much more apt - and something more applicable to SFDC, is anything which exposes "architectural resources" - such as Platform, Storage, or Compute as a service/hosted system is a much better, and cleaner a term then throwing applications built on cloud technology into the mix. The cloud is the dynamic, elastic, "on demand" of resources, not the utilization of those resources.
It does not, however, make your application "the cloud" - hosted applications are just that; hosted applications. Hotmail is not a cloud application, it might have a cloud back end, it might run on Azure, etc, etc but it's not "the cloud"
Yes.
We have a word for that - Internet.
You noticed that? :)
I think a much more apt - and something more applicable to SFDC, is anything which exposes "architectural resources" - such as Platform, Storage, or Compute as a service/hosted system is a much better, and cleaner a term then throwing applications built on cloud technology into the mix. The cloud is the dynamic, elastic, "on demand" of resources, not the utilization of those resources.
I think you are right, kind of. Developers talk about cloud computing, cloud storage etc to distinguish it from their traditional services.
However, non-developers don't see it like that. They see "email" as a resource, and the ability to elastically grow their email service as making it "in the cloud".
I think, as a term passed to non technical or lightly technical end-users, "the cloud" is largely useless. The cloud is not an "end user" feature except in the features that a cloud-based architecture might bring.
Taking your example - end users should never hear about "the cloud" when discussing email. All they care about is a hosted application that "just works" - having it based "on the cloud" is uninteresting, except by the features it brings with it, which they reap the benefits of.
So, maybe trying to use it when discussing things outside of mostly technical (IT personell, Devops folks, developers) is mostly useless except to denote a very specific (scalability, uptime) set of features and even then you're better off not talking about "the cloud" but the specific features, which are tangible to them.
They are CIO's and managers in charge of purchasing an email solution. They know they need a "cloud strategy", and vendors are quite happy to tell them their solution is "cloud based" if it make them happy.
So yes - it's mostly useless as a technical term.
Take for example, cloud storage. I would not sell "the cloud" part to a person, rather, I would sell them the fact that it's hosted and highly reliable, infinitely scalable, pay as you go and cheap compared to a local storage cluster buildout.
I wouldn't sell them the cloud part, as not all things in, on and around the cloud inherit all the features the cloud might bring (meaning, you can screw up an architecture no matter where it's implemented).
But unfortunately many times the people with the budget don't actually care about the features. The word "cloud" is important to them because their CEO read about it in a glossy magazine, so they need to be "cloud enabled"
You need to be careful, though because sometimes "cloud" is seen as a negative. I've seen companies that state "We don't believe in the cloud and we have a purchasing policy that excludes any cloud based solutions" - but then you dig deeper and find how proud they are of the "hosted solution" they bought from a vendor because of the way they don't have to pay for capacity until they use it.
Sigh..
(Advice for young players: Enterprise sales will kill your soul)
You can say it shorter - it's cloud.
1. Virtualization is key. I think the cloud is marked by a construction from dynamic pools of virtualized resources.
2. Instead of focusing on individual physical components, the cloud focuses on pools of compute resources. This seems to have led to higher priority for service delivery.
3. Finally, I think the cloud is defined by being convenient for the consumer instead of being convenient for the provider.
Within those constraints, I usually call a cloud private if it is under the control of an enterprise IT organization, in a way similar to older systems. I think of the cloud as public if the provider is mostly in control instead of the tenants.
With that definition of the private cloud in mind, the model offers a lot of advantages to larger IT departments. The private cloud allows IT teams to more quickly provision resources in support of business initiatives. It's also a better way to invest in IT infrastructure. The model is inherently scalable, which means that IT funds can be used to create value instead of keeping the lights on so to speak.
Obviously, private clouds aren't for every IT organization, but I think the private cloud has merit. As organizations globalize and just generally get big, economies of scale can be leveraged internally to increase the quality of IT projects and services.
Also, your alternative explanations are very Microsoft/Windows focused.
I find your definition of the cloud as very confusing and very limiting.
Pessimist: Data Star (Earth's version of the Death Star) that will just become another way for more ads to find us where ever we go in space and in time...
However, if I look at our customers (techies and enthusiasts who build their own computers), they define a cloud based service as anything primarily online - IE, your second definition. I think this definition is gaining ground.
What I think "cloud" should mean is the combining of individual resources (computing, storage, etc.) into a large virtual pool that can be accessed and allocated dynamically. This can be done within a corporation's own set of servers and devices (private cloud) or by tapping into someone else's collection of resources (public cloud providers like Amazon, Azure, etc.).
If you have a global company, such as GE running it's own "private cloud" where CPU, Storage and platforms can be spun up by departments, users and others "on demand" and destroyed just as quickly, and it's distributed, fault-tolerant and modular in architecture - why should that not qualify as "cloud"?
so my scripts can manage the data center (by growing/shrinking resource usage)
A cloud is not Azure. It is not AWS. It is not Rackspace.
A cloud is not definable by what it is, but by what it is not.
Asking for a definition of a cloud, is like asking for the definitive IP Address of www.amazon.com.
A cloud is a hand-wavy indirection, and abstraction of a compute or storage infrastructure.
Each of the products you mentioned are not Cloud. They are manifestations of a cloud. But they are not the Cloud, as they are no longer abstract.
I suspect the "cloud" trend will continue to allow us to abstract more of our computing resources, and make computing/application construction pieces more of a utility/commodity then they ever have been.
So despite it being used a bit too much in marketing - I think there's some fire behind all the smoke, and dismissing it simply because marketing people are blowing it around a lot runs the risk of ignoring a major technological shift.
The line between any classic distributed system or cluster and a 'cloud' is blurry, but generally speaking a cloud's API should be internet-compatible and capable of using commodity hardware to scale up with minimal (and preferably asynchronous) intervention from system administrators.
As for 'The Cloud' -- currently I don't think there is 'The Cloud' the way there is 'The World Wide Web', but it's theoretically possible. Right now 'The Cloud' generally means 'A Public Cloud', which is a publicly available distributed system like the one I described above. A Virtual Private Hosting service is not a cloud, because allocation of resources typically involves a sales contract of some sort. But the service itself it might theoretically run on a cloud, and you can build a cloud out of VPSs.