Cloud has recently excited me more than anything else in the world. Consider this a fanboy rant.
Earlier, I was avoiding the cloud because it seemed very hard. But like every computer science buzzword, it is much much easier than expected.
Recently I started learning AWS. These are a few things that have changed my mind.
Cost: Pay only for what you use
Cloud is anyway cheaper than building and maintaining your server.
The cost can be optimized further by setting up things properly.
Cost is impacted by decisions such as:
- Pay per minute
- Different cost for different configuration
- Pay per GB of data stored
And cloud vendors themselves provide options and encourage customers to optimize their usage to reduce cost.
Resources are available to you the instant you want them and in the location, you want them at.
If I were to start a Deep Learning project, on my local machine, it would take a full workday to just set things upright. Plus, you’ll have to deal with upgrades and maintenance yourself.
The same thing I wanted to do on AWS, it took just 3 minutes.
In fields like Machine Learning, you need high computation and specialized hardware.
A cloud provider can provide it instantly.
Similarly, Quantum Programming is a new field for programmers that were not available to most developers. But cloud providers are providing infrastructure for this new field.
Choice: “We’ll provide infrastructure. Your code!”
Traditionally, if you buy hardware and it is not used, you cannot do much other than selling the hardware to reclaim the cost.
Cloud solves this problem by allowing users to change their underlying infrastructure at any moment.
Maintainance: “We’ll provide support. You code!”
Small things like replication of the servers and databases, scaling, sharding, maintaining security, etc are automatically taken care of with a few clicks.
Cloud vendors provide a good set of defaults and out of the box solutions to these common problems.
Abstraction: Easier than Traditional Setup
Cloud vendors make it easier to use the cloud. Things are abstracted and one can choose to learn until what is required.
Most normal developers would not have to deal with specifics of the infrastructure.
Special APIs: Code less
Almost all cloud providers provide special APIs for things like text recognition, image recognition, and even blockchains.
One need not be an expert to use these out of the box solutions.
Conclusion: Cloud is a Win-Win
Cloud provides a lot of consumer surplus.
Cloud is such that the price of owning and maintaining for the individual user than if they would have built a server themselves.
While for the cloud provider, it is also cheap because they provide it at scale.
Not to mentions, they are easier to use and provide the flexibility of choice.