Staring at tens of thousands of lines of code I had written over the last 5 years at my current job, I realized how strange the world we live in truly is.
Legend has it that “abracadabra” is some form of the idea that: “I will create as I speak,” (see wikipedia for various sources). I first heard it as, “What I say is.” Regardless of the truth of these “meanings” of the phrase, the concept is what I find intriguing: Creating reality through language.
In a way, programming is that very thing. We use programming languages to create digital reality—and it’s a reality that absolutely affects, influences, interferes, and integrates with physical reality.
As I reviewed my massive codebase—I say my, because I’ve been the sole developer on this project the entire time from its conception—it struck me that the entire system that powers my teammates’ online marketing efforts is entirely from my mind (or at least has passed through my mind).
My brain has synthesized competing objectives into accommodating processes. It has consolidated issues and desires, it has discovered ways to extend reach and minimize frustration with online publishing. In a way, everything you see on the company website is there because I “spoke” it into reality—bugs and all!
Knowledge Work
Code is not the only way for us to “speak” something into reality. It is any knowledge work that provides us with this godly power. The capacity that we have as humans to understand systems and to work within them is unique, especially as we consider what artificial intelligence is able to do currently.
Is this the final piece that we humans have over AI? Perhaps that’s a topic for another day.
What I do know is that our minds have a great impact on our collective reality. This encompasses creators and consumers; leaders and workers; privileged and unprivileged; included and excluded.
All of our minds contribute to our reality in some way.
Binary Complexity
The second component to what has perplexed my mind as I’ve thought about how “what we say is,” is the binary paradox.
There are so many examples we can look to that encourage us to think in terms of binaries. Male and female. Black and white. Old and young. It’s a ubiquitous way of thinking, reinforced by social constructs—especially in terms of gender and race.
We can even be convinced by our brain to perceive threats where there are none (thanks to trauma and/or other factors). It becomes all about the extremes. Everything is terrible or perfect. You're either with me or against me.
Unfortunately, “black and white thinking” as it’s called in psychology is not only limiting, but it’s also largely inaccurate. In case you missed this diagram from a few emails ago, here it is again ;)
The more we know about any topic, the more nuance we discover. The more we study humans, the more complex we become.
We may love our jokes: “There are two types of people in this world…” but if you add up all of those joke variations, you get a whole lot of types of people in this world.
That’s what I’m calling the binary paradox. Let’s go back to programming really fast to get at this a little deeper.
Binary Roots
Many of you will likely have heard that computers ultimately understand binary at the very lowest level of its complex architecture. “Binary” is a way of encoding information through sets of ones and zeroes. A “one” represents “on” and a “zero” represents “off.”
If a computer ultimately is built on these two signals, how in the world can I watch videos made by someone across continents? How can I see different colors on my screen? How can I order a pizza on my phone without actually calling anyone?
The amazing things that we are able to do on our computers is built on binaries: billions of billions of binaries. We don’t see the binaries anymore (unless you’re a college student or just obsessed with computer science), because we’ve added layers on top of the on-off signals.
Binary gets turned into a programming language, which then turns into YouTube or a pizza app or a website.
Despite its appearance of simplicity, binary has allowed us to do incredibly complex things with our technology. This is where my metaphor gets a little shaky, but I think it still holds up a bit longer, let me explain.
The reason that binary works to power great complexity is because of combinations and sets of binary values. The character "a
" that you see in this email is represented by this binary set 01100001
, also known as a byte. 1,000 characters make up a kilobyte.
We can use those characters like I am in this email: as direct communication with a human. Or we can use those characters within the framework of a programming language to communicate with the computer: Create this layout, this functionality, etc. A single bit (a one or a zero signal) is simply insufficient.
Black and white thinking is a kind of cognitive binary, where only the farthest points on the scale or the spectrum are acknowledged (black or white, yes or no). While a computer can only read electrical signals interpreted as “on” or “off” binary, we can do much better.
A binary system of thinking is a shortcut, a way to condense an immense and incomprehensible amount of information into something that we can easily understand. Male and female: done. “Black” and “White” as race: done. Except that isn’t the reality. (1)
While a computer can build complexity with the simplest of systems, we humans seem to be trapped by it. Instead of building greater understanding and complexity, we limit it. We need to break binaries if we want to truly be seen and heard as people. It’s a lot more work—more processing power, if you will—but it provides more space for healthy relationships and human flourishing.
Cyborg
If anything else is to be gained from our computer model, it’s the need for diversity. A single bit is neither representative of nor sufficient for an entire system. A single person cannot be the only voice, the only power, the only creator. It is a combination of many voices that can create better systems.
What we say becomes reality. Our language is powerful, because it affects everything from how we think to how we influence others. Who we allow and don't allow to speak also has life-altering impacts on our reality. What is spoken can build and it can also destroy.
While I may have been a solo developer, I was using an inherited language (python) that was created by many other people. I was using a framework to allow me to focus on building specific functionality, but the vast majority of the system was already there, working behind the scenes.
I don’t know any binary code, because we have moved several levels beyond it. That which I have “spoken” has become, but it wasn’t because I, alone, spoke. It was in concert with many, many other voices.
NOTES
(1) I'm not saying that the categories of male and female or black and white in terms of race don't exist or that they aren't important. However, they are ultimately defined by social context and aren't as simple in reality as they appear to be on paper. If these social constructions cause us to judge ourselves: "Am I man enough? Am I black enough? Am I straight enough?" maybe there's something incomplete about how we frame these as binaries?