Imagine a scenario where productivity in software development improves tenfold. A project manager wakes up knowing that only 10 people are needed for a project that previously required 100. This is as certain as the blue sky. What will this project manager do?
One option is to continue with just 10 people and find other tasks for the remaining 90, or even let them go. This is tough because it admits that too many people were working on the project. Managing a 100-person project is more prestigious than a 10-person one. There’s also a risk because if you need those people again, they might not be available.
Another option is to keep the 10 people on the original project and give the others a different task. You could expand the project’s scope, as the demand for more features is common. Alternatively, find another project for them. Both options could add more value to the organization and increase prestige for everyone involved.
Perhaps the project could be accelerated with more people, but this is challenging. More people can slow things down due to the need for training and communication. Fred Brooks highlighted this in his book “The Mythical Man Month.”
But is this scenario realistic? Fred Brooks, in his paper “No Silver Bullet,” claimed that no single measure could improve software productivity tenfold. However, a combination of measures might achieve this. This blog post is a hypothesis, not a proven fact.
One reason this scenario might be realistic is the prestige associated with larger projects, leading to more people being involved. Parkinson’s Law states that all available people will work on a project, increasing communication, which can complicate the architecture. Conway’s Law links communication and architecture, suggesting that poor communication leads to poor architecture.
With a clean architecture and fewer people, the project might progress just as quickly, making the thought experiment more plausible.
The driving force behind this thought experiment is artificial intelligence (AI). AI could make code production significantly more efficient. If productivity improves by a factor of 10, what happens? The thought experiment suggests that more software could be produced, used in areas not previously feasible.
In economics, this is known as the rebound effect. For example, if cars become more efficient, they are used more, potentially increasing overall consumption. AI might have a similar effect: making software development more efficient but also expanding its applications, keeping the effort constant.
AI could enable people without technical skills to develop software. This promise has existed before with technologies like COBOL and low-code platforms. Even if AI succeeds here, other industries show the effects of such disruptions. Desktop publishing allowed more people to create print materials, but quality didn’t necessarily improve, and professionals still have their roles.
This might suggest that the software industry is secure against AI disruptions. However, predicting the future is challenging. One could argue that the current IT market crisis foreshadows what AI might cause. The future remains open.
Even a tenfold increase in software development productivity, possibly brought about by AI, doesn’t necessarily mean fewer people will work in the field. Instead, software might be used for more purposes.
On January 21, 2025, the betterCode() GenAI conference will start. Organized by iX and dpunkt.verlag, this online conference covers important aspects of AI-supported software development. The betterCode() GenAI shows how AI optimizes code reviews, assists in testing, and migrates legacy code. Security aspects are also crucial.
The conference program includes talks on:
- Software development with Copilot, ChatGPT, and others
- AI tools in coding: The new standard?
- Quick feedback through code reviews using GenAI
- Better test results with AI
- Defeating dinosaurs with ChatGPT – LLMs for analyzing old systems
- Security by AI – Strengths and weaknesses of AI-supported secure software development