A Human Wave Bubble Ready to Burst
It is clear that there is an ever growing need for software in the world. When there is need, supply forms naturally. Unfortunately Software is a difficult industry, and it takes a special kind of people to deliver it. We are not talking of something like manufacturing. Software is even in a special class of engineering. It is close to science, and the amount of concepts to absorb to deliver it is daunting.
The Bubble grows every time somebody is faced with a software demand, and realizes that to satisfy it, they won't find capable professionals on the market. By "capable" we mean able to handle the tools of the day. The temptation is great to accept using inferior tools, easier to use, to find people ready to work with them.
Why is it a problem? Because it is a slippery downwards slope. Demand far exceeds supply, and accepting to "degrade" the quality of hires iterates over itself. Give it enough time, and soon, IT professionals use conceptual tools (seemingly new) which are outdated, and write off decades of software engineering progress.
But some people would say "who cares?", my software was delivered. I had to hire a bunch of people to deliver the solution, both for programming and quality assurance, but at least I delivered. It is better than not delivering at all, isn't it?
Alas, this reasoning is incorrect. The reason for that is that software is not just delivered with people, but with software as well. Software helps delivering software. And what software does best is to automate what people do.
Writing off half a century of progress, and surrendering on leveraging the more and more difficult conceptual path to automation exposes entire organizations, masses of people, to being part of a large bubble, and suddenly, like with all bubbles, brutally eliminated. Using tools which are apparently new, being reassured by following what the large community of professionals is doing, is precisely what makes the professionals inside the bubble vulnerable. With the number of programmers doubling every 3.4 years, the average experience of programmers is very short. It makes the vast majority of programmers in the world blind to any threat to their way of working. Real progress continues without them, until it will be too late.
The comparison with electronics is quite striking. It is as if there was a shortage of people capable of creating Integrated Circuits, and to satisfy demand, hoards of people soldering large outdated components (resistors, capacitors, etc.) were hired.
So, we ask, are we really doing a service to people by promising them an entire career, spanning decades, based on manually soldering components to a board? Is it really a good deed?
Should we have sympathy for "sour grapes" views where technical employees claim that the science in ICs is too complex? That performance does not matter? That hiring inexpensive offshore resources will beat technology progress? We think not. Machines are cheaper than people.
We must embrace the full progress of software, and use it for what it is very good at: automating. That includes automating software production. And then we will see true progress, and solutions will be feature-rich, will perform well, and new opportunities will arise, including for all professionals ready to adjust.
The Case for High-Definition Search
Metaspex's Performance Advantage: A Miracle?
Ubergeek corner: Metaspex answering the 8 Ultimate Software Questions