The Ultimate Platform

As strange as this may seem to some, my appreciation for nature has deepened over the years as a direct result of learning more about how software is architected. When I say nature, I am not just talking about trees and beautiful scenic vistas, I am referring to literally everything that exists (AKA the universe). I see the universe as the ultimate platform and I am in awe of what exists and how it may have come to be.
In my line of work, the word “platform” is very common and used almost daily. As with many words in the English language, it can have multiple meanings depending on the context. In the software world, the term can be thought of as a “foundational environment” that enables the creation and execution of software.
The foundational environment has some elemental capabilities, constraints, and/or mechanisms. Platform architects and engineers take those elements and weave them together into more targeted components or services. Those components or services can further be woven together to create meaningful software solutions that address many use cases. Each time something new emerges from combining lower level elements, it represents a new layer of abstraction. The foundational layer is considered the lowest level of abstraction and each new layer is one step higher on the abstraction rung.
That probably sounds confusing, keep reading.
I love using analogies, so here is one that I hope will convey this concept of abstraction layers in a more digestible way. It’s not a perfect analogy but If you can resist the urge to overanalyze it, it will get the point across. Think of the English alphabet as a platform. But instead of software creation, this platform is used to describe ideas in a written form.
With this analogy, the lowest level of abstraction is the letters of the alphabet and any rules that govern how those letters can be arranged. So if we take various letters and arrange them together we then create a word. Different letters and different arrangements of those letters will create different words.
The concept of a word represents the next layer of abstraction. We went from the lowest level of abstraction (letters) to a slightly higher level of abstraction (words). Each individual word has some specific meaning (capability) that generally differs from the other words. We then take words and arrange them together to form sentences.
The concept of a sentence represents the next layer of abstraction here. A sentence is just words arranged together, and words are just an arrangement of letters. And a sentence can represent simple ideas.
Some have estimated that roughly one hundred million books have been written in the English language. How many unique ideas do you think have been expressed in those books? Not a small number for sure, and there isn’t a real limit to how many ideas can be expressed using our alphabet platform.
Every single one of those ideas are just different combinations of our 26 elemental letters which is pretty amazing! (In software, it all boils down to just 1s and 0s!)
Now that we are aligned with the usage of the word “platform” and have an understanding of abstraction layers, I want to nerd out on the ultimate platform a little.
In my mind, the universe is the ultimate platform because literally everything that exists is just something created from things on an abstraction layer below them. Let's start with a basic example to show you what I mean by that.
Water.
Water seems like a very basic thing. I mean, it's just water right? Yes and no, depending on your perspective. Water, from the human perspective, is just a liquid. But if you zoom in enough you see that water isn’t one thing. It's just a mind-blowingly large number of little tiny things (molecules). Water is considered a substance. Substances are just a bunch of molecules. So in this example, there is an abstraction layer where molecules sit and an abstraction layer slightly above it where substances sit.
And that is just a super basic example. Literally everything around us is some construct that exists at a higher level of abstraction. And the coolest part is that scientists still don’t know what the lowest abstraction layer of the universe is. String theory is the leading guess at the moment.
For THOUSANDS (yep BC/BCE) of years it was thought that the atom was the lowest indivisible building block of everything. But in the very late 1800s electrons were discovered. Then protons. Then neutrons. So an atom turned out to be just some arrangement of the things on a lower abstraction layer. A half a century later, advancements in particle physics showed that even protons, neutrons, and electrons were made up of smaller things like quarks and gluons.
I get super excited when I think about how we (self aware, thinking, and conscious beings) are just some arrangement of whatever the low level building blocks of the universe are. I sit in wonder of all the amazing possibilities of other things that can be built on this beautifully sophisticated platform of elegance we call the universe.