HACKER Q&A
📣 quijoteuniv

What are the REAL pros and cons of Cloud Computing?


I am almost finished with a higher education course in computer science and I figured in half of the subjects I took they asked me at one point to explain the pros and cons of cloud computing. I was wondering if I can get some real examples of this from the experts ;)


  👤 bsenftner Accepted Answer ✓
Pro: lots of people seem to think it is the only way

Con: lots of people seem to think it is the only way

Fact of the matter: running cloud infrastructures is as complicated, if not more complicated, than simply creating and hosting your own data center. The propaganda is thiiiick and those being told the cloud is not the only solution literally melt down when proven wrong. I've created server clusters, co-lo'ed them and maintained them through years, and ddos attacks and more - and I just figured it out, probably just like anyone working in the cloud. But, and this is a HUGE BUT, the monthoto-month expence of owning a cluster is merely the co-lo cabinet, for me that was $600 for a full cabinet. This is in contrast to the same setup at AWS is $96K per month. No brainer if you ask me.


👤 themodelplumber
Con: You may not be able to handle or even estimate the technical/infrastructural/administrative debt involved in interfacing with what the cloud you're using _becomes_ over time. Others' clouds can thus turn your future into more of a black box, especially if your project is e.g. non-enterprise and yet operating in an enterprise cloud environment.

Pro: You usually don't need to reinvent as many wheels, and this is generally more true the more the cloud and its userbase align with you and your needs. Clouds are also generally set up to cater to different forms of opportunistic development or opportunistic project spin-ups, which is a similar sort of advantage.


👤 GianFabien
Cloud computing refers to a broad spectrum of situations, ranging from renting raw hardware which you access through a network enabled console to simply writing functions to be deployed on demand and many steps in between the two extremes.

For me the biggest Pro: is that I can rent machines, connected to the internet where I have total freedom on how powerful the machine is and for how long. For example, I can rent a low performance system for continuous internet access, and/or a very high performance system only for a few hours to get a critical task completed.

There are also several Cons: Data ingress and egress charges become considerable if you are moving a lot of data. You are using other people's hardware and infrastructure, thus you do pay a substantial margin over the cost. Your data can become inaccessible and might be less secure.

As with every engineering situation, you need to understand your requirements and then weigh up the pros and cons to arrive at the optimal solution to any given problem.

For example, if you don't have the technical know-how to setup and administer servers connected to the internet, then having it all done for you is a huge saving in time and effort. The incremental cost being far less than the alternatives.

Another example, if you need to process large quantities of confidential data on a regular basis, then having a suitable in-house computer system is likely to be a more secure and lower cost approach.


👤 ArtWomb
The Big Query ML / Auto ML stuff on Google Cloud is really fun to experiment with. You can throw in gigs of unstructured data and apply data models for classifying and predicting almost instantly. "Data-science as a service".

I think the "con" is something like the statistic I heard: only about 30% of enterprises admit gaining any actual actionable intelligence from their cloud migrations.

We possess the tools now for strong AI, we just need to figure out how to apply them ;)


👤 joshxyz
Always around these topics: deployment speed, scaling speed, capital costs, operating costs, security, compliance, latency, high availability, business continuity

👤 tony-allan
Pro: You can quickly combine a wide range of high level services (functions, queues, databases, object stores) to construct applications.

👤 speedgoose
Pro: You can blame your cloud provider when it fails.

Con: The biggest public clouds are extremely expensive if you want good performances.


👤 tony-allan
Pro: You don't need to own or manage hardware. This also means that capital expenditure becomes operating expenditure.

👤 tony-allan
Pro: With a suitable application architecture, you can scale quickly and usually automatically.

👤 codingclaws
I think sys admin is supposed to be easier.

I don't like their walled-in, complicated stacks.