
One of the facts of human cognition that never ceases to amaze me is that we seem to ignore more than 99.9 percent of all information that reaches us through our senses. Consciously, that is, as at least some of it is used by the unconscious parts of our brain. This means that our brain has mechanisms to filter all the information that reaches us to allow us to focus on the few things we can be consciously aware of. Many of us have heard that humans can keep 7 plus or minus 2 concepts in our head at the same time. Any more and we lose track.
I believe, like many others, that this aspect of our brain has played a critical part in our survival as a species, as we really need to focus on the few things that matter and ignore everything else. I remember a situation where I was walking through a forest with lots of dead wood on the ground. Suddenly, there was movement on the ground and I realized that I had almost stepped on a snake. My subconscious rang the alarm bell, I jumped and at the same time, all my conscious attention was on that snake. At that point, I wasn’t aware of the trees around me, the rustling of the leaves in the wind or the scent of the forest after recent rainfall.
In modern-day life, there are few snakes to worry about. Instead, we’ve created an incredibly complex world where, really, nobody understands everything. And yet, it works thanks to our phenomenal ability to build relationships beyond the tribe level. Except for insects such as ants, bees and termites, humans are the only species that has been able to organize itself productively beyond the size of a typical tribe – up to 150 people.
The reason we can do that is by creating and sharing concepts. In some way, we’re creating illusions that we accept as real and that become inter-subjective truths that are shared among a culture, society or discipline. The most effective strategy we have is to create concepts and draw clear boundaries between them. We find these concepts everywhere. For instance, the founding documents of the US use concepts such as property, laws, elections, press and so on. Although we all recognize and use the terms continuously, there’s no real-world object that represents any of them. They’re illusions shared among a group of people that are useful because they provide a common base to operate from.
In organizations, we tend to do the same and often organize work around a product, a discipline, a business model, a region or some other principle. Once we create the ‘boxes,’ they tend to become fixtures in our head as, especially in groups, it helps to have a common framework as a basis for discussion and collaboration. These concepts help us hide vast amounts of complexity behind a single word. In companies, terms like “customer”, “manager”, “sales” and “development” have meaning to the people using them.
In software, we have a similar vocabulary that’s used all the time, such as “requirements”, “architecture”, “detailed design”, “coding”, “testing”, “validation” and “release.” As you read these words, images of their meaning pop up in your head and you use these to structure the overwhelmingly complex reality we live in.
We’re in an age of very rapid change, in large part due to digitalization, and as a consequence, several of the concepts, boundaries and organizing principles are no longer as effective as they were earlier. Continuing to use them tends to be less effective and productive and may easily lead to a situation where we’re outcompeted and disrupted by players with a better set of organizing principles.
When we translate this to software, the emergence of agentic AI and the vertical agents supporting software development will once again upset the apple cart. My prediction, to be further explored in my next series about AI-driven companies, is that we’ll grow systems rather than build them. The heart of future systems will be an agent or set of agents that, based on prompts, feedback and data, will grow and adjust the functionality at run-time. No requirements, no architecture, no coding, no testing in the traditional sense. The set of concepts we’ve so far used in software are outdated and we have to invent a new paradigm to be able to reason and talk about software-intensive systems.
This is true in industry and society. In my view, SaaS companies have developed a better way of organizing themselves than traditional software-intensive product companies. And if I compare what the product companies under the leadership of Elon Musk are accomplishing compared to many of the companies I work with, I venture that he’s found ways of organizing work and applying organizational principles that simply are better than the traditional ones.
In a world where there’s constant evolution of the ‘memes’ we use, we need to be careful not to get stuck with a set of outdated concepts. It’s not that we won’t be able to build and maintain products this way, but rather that new ways of working are so much more effective that we’re simply unable to compete. It’s not that we can’t distribute goods with horse carriages, but the effectiveness of using modern trucks is so much higher that it simply doesn’t make sense to use any other way. The purpose of this series wasn’t to eradicate all distinctions and make everything one big ball of mud. Instead, I hope I’ve managed to have you rethink some of the concepts you use in your day-to-day life and work. To challenge some of the traditional distinctions that most, if not all, people in software-intensive product companies tend to make. We need to find new organizational principles that fit better with a digital world where we deliver new value to customers on a continuous basis. We need a new paradigm, and to end with a quote by Stephen R. Covey: “Paradigms are powerful as they form the lens through which we see the world.”
Want to read more like this? Sign up for my newsletter at jan@janbosch.com or follow me on janbosch.com/blog, LinkedIn (linkedin.com/in/janbosch) or X (@JanBosch).