Clearly the growth cannot remain exponential. If it did then thirty years from now 3 out of 4 humans on the planet will be programmers. That's not feasible.
What is driving the current exponential growth? Exponential demand. Every N years the demand for new software that people are willing to pay for doubles. Thus, every N years we must double our capacity to write software.
What will slow the exponential demand for nnew software? Perhaps we'll run out of applications. Or, perhaps the price of software will increase.
Why would the price of software increase? Because the supply of programmers will become too low to meet the demand. This will drive programmer salaries up and therefore software prices up.
What could increase our capacity to write software? Hiring more programmers of course; but also better tools, better languages, better environments etc.
Will our tools become so powerful that we can meet the exponential demand for software without hiring more programmers? That doesn't seem likely; but some folks worry that AI will take over most of the work of writing software. If that happens then software will get cheaper, and demand for new software will increase without the need for more programmers.
The most likely outcome of all this that the exponential growth of programmers will eventually consumem the supply, driving programmer salaries up. This will create enormous pressure to automate more and more of the software process, allowing programmers to magnify their productivity. At some point all these forces will stabilize and the exponential growth of programmers, and demand for software, will plateau.
>From: (benc) at 04/26/23 23:38:35 on wss://nos.lol
>---------------
>#[3] when suggesting the population of programmers doubles every five years we end up with an exponential growth.
>
>Exponential growth isn’t very natural.
>
>Any thoughts on it being more like logistic growth and that some compensating factor will curb growth in the future and maintain an equilibrium?
Thank you for humoring me. I’ve been writing code for eight years and had never though about software in this way until recently.
I wonder if low code/no code technology is an attempt to automate to the extreme. Build the platforms that enable more people to construct applications. I guess we see things like IFTT, zapier, salesforce, etc and it hasn’t changed much in the software world yet. I think public API products fit into this category too.
That brings up and interesting thought. How does relate to the average level of craftsmanship across the profession? It seemingly creates a divide. Those who enable more software development must be must account for the delinquency of a newer generation of software development.
In my experience that is not on the top of engineers minds. Who knows though, I may just be part of an previous generation of software delinquents.
>From: (benc) at 04/27/23 08:46:28 on wss://relay.damus.io
>---------------
>I wonder if low code/no code technology is an attempt to automate to the extreme. Build the platforms that enable more people to construct applications. I guess we see things like IFTT, zapier, salesforce, etc and it hasn’t changed much in the software world yet. I think public API products fit into this category too.
All the low/no code products are an attempt to use fewer programmers and to make it easier for non-programmers to configure their systems. In the simplest cases is works OK; but no system stays simple forever. As the complexity rises the Low/No code systems become much more of a liability than a benefit.
>That brings up and interesting thought. How does relate to the average level of craftsmanship across the profession? It seemingly creates a divide. Those who enable more software development must be must account for the delinquency of a newer generation of software development.
The average level of craftsmanship decreases because of the exponential growth. The need for craftsmanship _increases_ because the complexity increases. It's a dilemma.
Thread collapsed
Thread collapsed