If I had to say how the world is going to change in the coming years or even months, my safest answer would be:
"The world will keep changing the same way it always has."
We haven't noticed because of all the hype and distractions, but every change in every industry has always been about the same thing: how the input and output of processes happen, the abstraction between them. Work is simply managing a black box. Whether you know how it works or not doesn't matter, the only thing that matters is the results you can generate with that box.
The Black Box
Before AI, there were already people using black boxes to build and deliver results. There were developers who didn't understand how frameworks worked under the hood and could still use them and get the job done. The only thing you needed was to be creative when solving problems.
And I'm not just talking about the programming industry, I'm talking about all of them. When I say all, I mean ALL. There are people who work as brokers and don't even know where the interest formulas they use come from, they don't know math, they just know how to use Excel. Does it work for them? Obviously. So, should they never bother learning it?
When programming first emerged, the term "programmer" didn't exist. They were mathematicians, because that's where it all came from. Programmers were the mathematicians who knew how to write algorithms by hand. But later, when it was no longer necessary to learn how to do it manually, they could deliver results without knowing how.
Graphic designers had to master every drawing technique to convey a sense of depth in an image. Now they can simply use a rendering engine to get that result. Could they do it by hand, from scratch? Some can and some can't, but in the industry they can deliver the same result.
Abstraction
We tend to add layers of abstraction to the processes we carry out:
Input → Process → Output
For example:
- Input: we want to create an algorithm
- Process: it's programmed in C
- Output: we have the result
The only thing that evolves is what happens between the input and the output, but the extremes never change. The black box is the process. The more abstract it becomes, the darker the black box gets, because we tend to strip away complexity from things, or rather, we tend to simplify complex processes.
We no longer want to calculate mentally → we use calculators. We no longer want to write on paper → we use word processors.
This is how evolution has always worked. Abstraction is the technological growth of processes.
Ignorance
But here a problem arises that we've been living with for many years, and I believe it has been the problem of every industry. Obviously the root problem has been the corrupt human being without values, but that problem feeds on the level of abstraction.
Having layers of abstraction may bring benefits because we expand the use of complexities to other people, and that's what we want. But by making that black box bigger, we also expand people's ignorance. The increase in ignorance isn't the fault of abstraction or technological growth, it's the fault of people's behavior in the face of growing abstraction.
With a growth in ignorance, people become susceptible to being deceived, to lies and falsehoods having great influence over us. That's what happened with the growth of abstraction in the digital era, where fake news keeps emerging and growing stronger. But it's not that the lie is stronger, the lie remains the same, it's that people are weaker because they're ignorant of the black box. Human beings become easier to deceive with false facts. Does this benefit us? Yes and no. These are opportunity costs of the growth and evolution of technology.
Know the box?
As I mentioned before, there are two types of people and there always have been: those who know the black box and those who don't. Both can use them equally, but those who know the black box have a greater power of application.
Imagine you have an input where you need to use something that isn't quite perfected in the black box. What do you do? You want to use a mathematical function to apply it to a problem, but the function needs to change to the exact form you need. In that case, the calculator isn't going to help you.
Knowing how the black box works gives you an advantage in using it. It's like a Formula 1 driver: without a team or anything, who drives the Formula 1 car better if both are drivers but one knows the engine and the mechanics? Who is the better athlete? Both are talented and equally skilled, but if one person knows their body and understands how it responds to nutrition, who is the better athlete and who will give you better outputs?
The Fundamentals
The outputs will always be good because abstraction will never generate bad outputs. But do we want good outputs or outputs with knowledge?
We want to know where the output comes from. That's how we limit the ignorance that our behavior generates in the face of abstraction. Because abstraction shouldn't be costly, on the contrary, it should be beneficial, it should create easy times and strong people.
But unfortunately we live in a world where:
- Easy times build weak people
- Weak people create hard times
We need to study math, physics, ethics, economics, we need to know the black box. When we use something, we need to know it, we need to understand it. Because using abstraction is good as long as it empowers us, not enslaves us, like social media. We must build freedom, not dependency.
We need recreational programming, we need to understand for the pleasure of understanding, not just for the obligation of producing.