Technically I understand what is cloud computing, but I'm having difficulties when trying to explain it to a layman. I am wondering if there are any good examples which could easily explain it.
Grandma, your computer is a garden. Cloud computing is a supermarket.
With your garden, you do all the work. If you want to increase the yield, it takes a lot of effort and time.
With a supermarket, you don't have to maintain the garden. And if you suddenly need more food -- say you're having a party -- you can get it right away.
Both gardens and supermarkets are useful.
Now, did you bake me any cookies?
Instead of doing the computing on your local machine, it's all handled on the far end by a machine that is far better. Your local machine only needs a net connection to the machine on the far end.
Except it's not one machine, it's actually distributed across a lot of machines that are, collectively, known as a "Cloud."
The advantages are
- Speed - instead of using your own box, you use a far better box on the far end.
- Redundancy - instead of relying on one big machine (single point of failure) you're relying on many machines.
The disadvantages are
- Net Connection(single point of failure) - if this goes down you're hosed.
- Persistence - you don't "own" the cloud, you rent it. You don't control whether it still exists tomorrow.
Here is what I have used to good success on the Cloud vs. Physical hardware
Physical hardware is owning a house. You have the property, the building, and pay for utilities, taxes, heat / air, etc.
Cloud hardware is a condo. You pay a certain flat (or minimally variable) amount and you get everything you get as if you owned the physical home but without the hassle of paying for everything separately. The downside is you don't actually own the home. If your water main breaks you have to wait for someone else to fix it. You are also limited to the certain pre-built sizes of condo's available, you can't build your own custom condo.