I have a question for you…
“What’s worth knowing?”
This is the question I’ve come back to time and time again while researching cloud technology. But… Before we discuss this deep question let’s first understand how we’ve got to this moment.
Cloud technology is the topic for this week, as usual, I’ve run into many bigger questions and what this means for us (humanity).
Let’s first take a look at what this “cloud” thing is…
From yesterday to today in the “Cloud”
The word “cloud” in the nerdy technology world has served a similar purpose for 50+ years, but its use has evolved along with our technology. The main reason we techies use the word “cloud” is to simplify and hide away complex things that aren’t relevant to what we’re working on.
The word first started with telecom companies (e.g. phone companies) drawing clouds to simplify networks in the diagrams of communication systems.
The word before “cloud” is a concept called “time-sharing”. In the ’60s time-sharing was when companies would rent time from a “computer bureau” massive mainframe, but this was quickly overtaken by the rise of personal computers and corporate data centers.
Now that we have a little history under our belts, let’s look at what “cloud” means in today’s world.
When thinking about the “cloud” I want you to close your eyes and picture a massive warehouse with tons of big black boxes that look like creepy fridges. These fridges (e.g. server racks) do many things, but the two main reasons for their existence are to process and store information.
Many of you might not realize that you’re actually using these creepy fridges on a daily basis while binge-watching Netflix, listening to Spotify, or sending emails via Gmail. These “clouds” are so prominent in our world today that 90% of companies are using the cloud and 30% of all IT budgets are allocated to the cloud (more here, here, and video summary here). But what makes this “cloud” thing so special?
To understand the value of the “cloud” we first need to understand the value of utility (more here)…
A pivotal moment during the industrial revolution was when factories were able to separate the process of creating power from the process of creating whatever product they were making (e.g. chairs, cars, etc.). Before this separation happened every factory had to worry about creating its own power via rivers or burning coal, which meant a large number of employees were focused on power and not the final product. This all changed when we figured out how to turn the power into a “utility” that could be purchased from providers that only focused on creating power. This was a pretty big deal. During this moment factories had the ability to buy as much or as little power as needed when creating their products… A similar moment is happening in our era, the information age.
Similar to how these “power providers” sold energy to factories, we now have “cloud providers” selling storage and computing (e.g. processing information) to companies. Meaning, we’ve figured out a way to separate the storing and processing (e.g. creating power) of information from companies, so they’re able to focus on the final product.
This change has been huge for every single industry because they all need storage and computing, similar to how they all need water and electricity to run their companies.
There are many benefits and downfalls (more here) that come with using this new utility, but we’ll keep it positive and focus on the benefits for now.
- Benefit 1 – Cost: When a company decides to use this new utility they no longer need to worry about purchasing/maintaining all the creepy fridges. They also avoid the need for buildings to put them in, people with skills to update/secure them, and paying the electricity bill to cool them.
- Benefit 2 – Scale: Another massive benefit that comes with this new utility is that you can purchase as much as you need whenever you need it. For example, if you’re website is only getting five people per minute, then a small creepy fridge should be fine to serve this small group, but if that increases to five million people per minute, then you’re in a crappy situation. Your small creepy fridge can only handle five thousand people per minute, so you’ll need to buy a bigger creepy fridge or many many smaller creepy fridges to handle this demand. Luckily, with this new utility, you can deal with a massive jump in visitors to your site without needing to buy more creepy fridges because they automatically increase with demand.
- Some more benefits are… Reliability, Flexibility, Control, & Security (kind of…)
There are different flavors of “cloud”, each flavor depends on how secretive or sensitive a company needs to be with its information. I won’t bore you with the specifics, but in a nutshell, most companies use a “hybrid cloud”, which is a combo between public and private clouds. A “public” cloud means you’re sharing a virtual playground with others and “private” is when you have your own special virtual playground (more here).
Within each virtual playground, a company can decide how much control they want over the storage and computing from the “cloud provider”. These details around control aren’t super relevant for this post, so I won’t dive too deep (more here). There are three main packages all ending with “as-a-service” because we techies think we’re great at naming things.
- Infrastructure-as-a-service (IaaS – Lots of control): You control everything except for the basics like networking, storage, and servers. Examples: AWS EC2, Rackspace, Digital Ocean, & Google Compute Engine.
- Platform-as-a-service (PaaS – Less control): You control how the Lego bricks are put together, but the bricks are given to you by the “cloud provider”. Examples: Using programming languages (e.g. Java/Python) to build apps or YouTubes platform to host, share, and distribute videos.
- Software-as-a-service (SaaS – Least control): You control basically nothing and you just receive whatever the “cloud provider” dishes out. Examples: Gmail, Spotify, & Netflix
Below are two helpful diagrams showing the difference between these three packages.
If you’re interested in knowing more about the techy detail check out “Functions-as-a-service” (e.g. Serverless compute or Event-Driven Architecture), that’s what all the cool kids are talking about these days (more here and here).
Now that you’re convinced that this new utility (e.g. storage and computing) from “cloud providers” is our version of electricity and critical for almost every company’s success, it’s time to make the “cloud” disappear!
Tomorrow’s disappearing “Cloud”
This “cloud” concept is nice in the traditional world of humans sharing old information (more here) with each other via the internet, but when we start to inject machines into the mix things get a little sticky.
The devices we use today are becoming increasingly intelligent, but more importantly, these devices are multiplying like rabbits. When we think of devices, most of us think about laptops, phones, and tablets, but we forget that our appliances, cars, boats, watches, and many other devices are beginning to connect to the internet. Estimates for the number of connected devices are all over the place mainly due to humans being horrible predictors of the future, but some talking heads are guessing that we’ll reach trillions of connected devices (more here and here).
This massive increase in devices comes with big challenges for the traditional “cloud provider” world. The challenges we’re going to face surprise most people because it’s not about having too much data (DNA storage has that covered), but the speed at which we’re able to manipulate and share that data. Most of these new devices will have a feedback loop that repeats three simple things… Sense, Infer, and Act.
The “sensing” piece will come from devices with accelerometers, cameras, depth, radar, etc. and this sensory data will be unreadable for humans, so each device will need the ability to “infer” what’s actually useful (thanks – machine learning). Once this device figures out what’s useful in the unreadable data it needs to “act” quickly to its surroundings.
An example everyone likes to use is self-driving cars… Imagine the camera on your car being the “sensor”, the machine learning algorithm being the “inference”, and the car not running the little old lady over the “action”. This feedback loop needs to be really fast, so sending this information to some “cloud” on the other side of the world and waiting for a response is not realistic. That’s where our beloved “cloud” begins to disappear to the “edge”.
“Edge” and “Fog” computing are buzzwords people like to throw around today, but this is simply a way to move the “cloud” closer to all these new devices.
Imagine the cloud, fog, and edge all moving top-down (more here), so the cloud is the largest creepy fridge further away from you (thousands), the fog is smaller creepy fridges closer to you (millions), and devices are all around you (billion to trillions). The increase in devices, the need for faster response times, and the improvements in machine learning algorithms will slowly make the cloud disappear out into the edge. Now, I realize the cloud will not completely disappear, but it will definitely become less important.
On the other hand, these smart devices will become hugely important to our daily lives, acting on our behalf with very little conscious input from us. If you’re interested in seeing one possible Sci-Fi future scenario check out this video from a16z.
I know what you’re thinking by now… Dylan… What the f*** does any of this have to do with your original question… “What’s worth knowing?”
Let me explain.
A question with no answer
Throughout this post, there’s been a common thread of “abstraction”, the abstraction of knowledge.
In the highly specialized and capitalistic world we live in today many different skills tend to be outsourced because it’s honestly better that way. We wouldn’t have all the amazing toys, tools, experiences, and leisure time we have without relying on others to abstract away their complexities.
Think about it. If you needed to understand how to make a phone, build a house, or make bread, there’s very little chance you would have any of them. Living in a society that’s specialized is useful to a point, but with all this abstracted knowledge I’ve begun to question how far is too far? And what are the negatives that come with this abstraction? Lastly… What’s worth knowing?”
After running in circles for days, I’ve realized that the answer to my bigger question, “What’s worth knowing?” has a simple answer… “It depends”.
Everyone is different, so there is no universal answer and it depends on interests, life circumstances, childhood, etc… What you label as “worth knowing” will be different from what I think. With that said, there are some meta-responses to this question that I feel are universal, such as critical thinking, learning how to learn, or first principles thinking.
We’re lucky you and I. We have the opportunity to choose what we know and what we let others abstract away from us through products and services. I personally have an unrealistically long list of knowledge I’m NOT willing to let others abstract away from me, but I have a lifetime to acquire it.
Next time you’re buying a product or subscribing to a service I want you to ask yourself…
“What’s worth knowing?”
Make sure the knowledge you’re abstracting away is something you’re OK with. 🙂