I have been attending this week to the"World summit of cloud computing" which was quite an impressive conference compared to other Israeli conferences I have been to with representatives from Google,HP,Intel,Amazon,EBay, Yahoo,SUN, Salesforce, GridGain, Forrester,GigaSpaces, MerrilLynch and more. Each one of those vendor has a different definition and point of view so after those two days I am ready to give my own definition and what it means to me.
So, Cloud computing is a deployment option for your application which has the following four characteristics:
Outsourced Your run your stuff on other people machines and infrastructures(IaaS). These resources can be conזsumed either from the the intranet for small large enterprises and government use or reside in the in the Internet for small/midsized companies. But the main issue here is that all you pay for the infrastructure in that case is money.
Economical Using this deployment option should save you money and possibly a lot of money.
- Reduced CAPEX:, meaning money you will need to invest upfront inoder to support the expected and unexpected changes in capacity.
- Reduced OPEX: Let cloud providers do what they do the best, maintain large machine infrastructure. Hopefully (with the right amount of competition) that will reduce your IT OPEX.
- New financial model: All the ?aaS concept is presuming a different(and more fair) revenue model compared to what we are used to in the traditional software industry you only pay for the resources you use no payment upfront and not commitment for long term.
Elastic You are able to adjust seamlessly the amount of infrastructure you consume. This helps you handle peaks more efficiently. You no longer need to choose between compromising on your SLA in peak times or let your servers rot in the cellars when you really don't need them.
SelfService You as a developer(and I am intentionally focusing on developers) are able to allocate and deallocate resources by yourself through an API no need to sign forms no paperwork. You can write on use software which will do the job for you.
And not to my thoughts:
So I have a crazy vision regarding this new concepts what I see in my mind is a billion USD internet company with a size of 10 people which altogether bring unique (probably patented) value and all their job is to orchestrate outsourced resources to the benefit of the company.
A CEO - orchestrating vision and execution with a set of VAs
VP sales - orchestrate sales operation through an effective network affiliation
VP infrastructure - manages the application in the cloud
VP support - orchestrate outsourced call center and
VP finance
VP R&D -
4 developers - developing only core business logic consuming open source projects for the other stuff.
I know it is a bit extreem but I don't care I am sure it will happen one day.