What's Up There?

Understanding what is the tech cloud and the bigger picture surrounding it.

Published September 12, 2022in Computation9 min read

Just a heads up, this article isn’t technical and goes over what is cloud and key concepts/terminology in cloud. I also cover the rise in cloud’s popularity from my perspective.

According to the Oxford dictionary, clouds are “a grey or white mass that floats in the sky, made of very small drops of water”. So there you have it, clouds are a rather simple thing that you have probably encountered if you have looked up at the sky … end of article :)


What’s the tech cloud?

That’s probably not the cloud you have in mind when you clicked on this article. You were probably thinking of the tech cloud. To cut straight to the chase,

shocked jatin

The cloud refers to accessing computer resources like CPUs and storage over the internet.

What this means in practice is that the cloud is a network of servers stored in data centers across the world which carry out various tasks like storing lots and lots of data, serving content to users, or even performing complex mathematical operations which would be infeasible on a single laptop or home desktop. It is like tapping into a global network of computing resources over the internet instead of just using your personal machine’s resources.

Cloud in a nutshell

This idea of accessing resources on machines (servers) around the world has been predominant ever since the beginning of the internet revolution. This is what is effectively known now as a “private cloud” where a data center, server, or network is created by and used by a single organization. Thus in the early 2000s, if you wanted to deploy a website, you would probably need to get your dedicated server and store it in your bedroom. In this case, you had a personal cloud consisting of just your server.

What is different is the idea of a public cloud where different companies allow other companies and users to use their data centers for deploying and hosting apps, computation power, and storage. It is essentially Servers as a Service. So, now instead of having to buy actual servers, you essentially rent servers depending on your need. This approach has a couple of key advantages which have paved the way for the cloud revolution which we are observing today with cloud-based photo backups to cloud-based gaming.

Before continuing, it is important to note that there are 3 key terms you will probably come across (which generally refer to different layers of functionality built on top of a single machine):

  • Software as a Service (SaaS): SaaS with cloud refers to specific software that takes advantage of cloud architecture and just provides the end service (as opposed to giving you access to the machines themselves). For example, Google Photos and Google Stadia are SaaS since they allow you to store photos and play games without actually directly accessing the machines that store photos or the GPUs that run your games.
  • Platform as a Service (PaaS): this usually refers to a set of tools that take advantage of the cloud and allow you to interact with its servers without having to directly interact with every single machine. PaaS gives developers a framework to build apps and is commonly used to deploy software using third-party servers.
  • Infrastructure as a Service (IaaS): this is where you directly access the servers themselves and get to treat them as virtual machines. This is essential and resembles “rent a computer” on the internet as you can choose which OS you want, how many CPU cores, GPUs and storage space you want and as long as you pay the per hour charge, you can just SSH into the machine and do whatever you want. It is important to note that popular Iaas like AWS EC2 gives you a “virtual server” which means that the next time you log onto your renter serve it may be a completely different machine in a different data center but it will copy over everything from your previous machine and will at least the base level computer hardware that you are paying for.

Abstraction on CLoud

But Why Cloud?

Accessibility

A key advantage of the “rent computational power” model that the cloud is based on is that it lowers the barrier to entry for applications that require various types of computer resources. You can only afford to buy a phone with 32 GB of storage but want to take lots of photos and videos? No problem, just upload them to iCloud or Google Photos and clear up your local storage. Want to play graphically demanding games like Cyberpunk 2077 or the new Halo on your phone or your potato PC? No problem, just stream those games using services like Google Stadia or Xbox XCloud.

In most consumer-facing instances, the main advantage of the cloud is that allows you to tap into computer resources that you are lacking. For example, if you are lacking in local storage options for your phone, why not just store them in Apple’s or Google’s data center where they have petabytes of storage just for you to rent by paying them a recurring fee in the form of a subscription? Similarly, instead of buying tons of CDs or downloading a bunch of movies (probably using illegal means :). If you are a gamer, instead of having to splurge hundreds or thousands of dollars on a top-of-the-line GPU in a gaming PC, you can instead use multiple top-of-the-line GPUs to play at higher resolutions and high framerates over the internet. Once you stop playing the game, the GPUs you were using can be used by someone else looking for a cloud gaming experience.

shocked jatin

The core idea behind these consumer cloud technologies is that your computing device can be less powerful (ex. Chromebook) but you can access more computational power over the internet.

Scalability/Flexibility

While being able to use cloud-based applications like photo backups and game streaming are great, the biggest driving force for the cloud’s dominance amongst companies is that provides nearly unparalleled scalability and flexibility when it comes to computing power.

Let’s say you wrote a cool little web application that allows students to find the most price-optimal meal around their uni/college campus. You had a spare computer lying around so you deployed your web app on your personal server. Turns out a lot of people are interested in checking out your app and your measly server isn’t able to keep up with demand causing the site to crash.

What are your options? Do you go out a buy 3 more computers to increase your server array? Then what happens if this is only a one-time spike and you get no users the next week, that would be a lot of wasted money as your new computers are not being utilized optimally. What if you could just rent those 3 computers and just return them when you don't need them anymore? That sounds great. But now, your app has gone international and people halfway around the world and students from Seoul are trying to use your app but there are a lot of delays as your server is just so far from them resulting in a poor user experience. What should you do? Rent our servers in various places around the world where demand is the highest. That seems like a good idea as it would drastically reduce latency and ensures everyone gets a great user experience.

The analogy above is essentially why switching to the cloud has become a no-brainer for so many companies that need to deploy software. Using a cloud provider like AWS or Azure, you can choose options to automatically scale the number of machines you require based on the amount of traffic received by your applications. You can also choose to deploy to machines all around the world to reduce latency. Additionally, you can also choose to “rent” computers from multiple different people a.k.a from multiple cloud providers resulting in what’s known as multi-cloudIf you want to use some of your own personal machines, you would be using a hybrid cloud strategy since you are using both your private cloud and a public cloud from your chosen provider. Hence, various approaches to cloud range on a spectrum from fully private to fully public.

What Could Go Wrong?

From the previous section, this article may seem like an ad for you to use cloud-based services and deploy all your applications on a public cloud.

shocked jatin

However, a key detail is that the advantages of the cloud largely boil down to using a more centralized computing infrastructure.

Instead of having every person or company own a machine that has a lot of computational resources, only some people/companies own and operate a bunch of beefy computers and allow others to use them. This idea is what allows a person with a Chromebook to still play triple-A games using cloud gaming. A key thing to understand is that the cloud movement is not due to computing power decreasing, i.e. triple-A gaming or high-resolution photography have become less computationally intensive. Playing the latest games at higher ad higher framerates requires GPUs to have more/faster video memory and high res photography requires more space than it has ever before with camera sensors becoming larger. Using the cloud, computational resources naturally become more centralized as instead of everyone owning a high-power computer, flocks of people use the pool of high-performance computers over the internet.

This relationship between a consumer of computer resources and a provider of computing resources over the internet seems like a very productive and healthy one, which in most single instances it is, leading to the widespread popularity of the cloud. But, where things could go sour is when we analyze this on a macro level. As we discussed, the people providing the computer resources need to invest a lot of money to constantly acquire top-of-the-line computer hardware and networking technologies to ensure high performance and low latency. This creates a naturally high barrier for cloud providers (unlike the lower barrier for entry for cloud consumers). This has led to the overall industry of public cloud providers being pretty consolidated.

In 2022, the Big 3 of Cloud Infrastructure: Google, Amazon, and Microsoft make up a combined 65% (which is up from 55% in 2018) Source 1Source 2]. This doesn’t sound all that bad until you realize what it truly means.

On March 8th, Discord and Spotify went down out of the blue for nearly 2 hours. Isn’t it a little odd that two really big platforms operating in entirely different industries went down at the same time? But there is a common thread between the two, Google Cloud. Discord and Spotify are reported to be active customers of Google Cloud and the cloud platform confirmed later that some error in Google Cloud’s "Traffic Director” caused the entire cloud platform, resulting in all companies using Google Cloud to also break. What’s even scarier to think is that Google Cloud is the smallest one of the Big 3 Cloud players.

If you think about it, it only takes one engineer at Amazon and Microsoft to push a change that breaks AWS and Azure and causes half of the services we enjoy regularly on the internet to go down.


Cloud is at the heart of a lot of other exciting technologies you hear about. Cloud ties in with 5G/Internet of Things and overall increased interconnectivity because as we can transmit more data over the internet and at a faster rate, we can also access more compute power at a much faster rate and a higher bandwidth. One of the major downsides to cloud gaming is that it requires very fast and stable wifi. But what if you had 5G, 6G, or 7G data access? The experience would feel seamless and just like running it off of a console or high-end PC.

As a developer, working with the cloud is becoming a requirement for most jobs, especially for backend/database developers. Jobs focused on just cloud-like cloud architecture are becoming more and more prevalent. With all this, it seems like the push to the cloud is only going to continue trending upwards.