A few weeks ago,
we had a brainstorming session to challenge the statement: “In 2026, simple coding of business software by a human is unprofitable.” It quickly dawned on me that for this prediction to hold, we would need fully autonomous coding or at least a high degree of automation. This concept immediately reminded me of the various levels of
autonomous driving—Eureka! Of course, I wasn’t the first to make this connection;
someone on the internet had brilliantly mapped these levels from driving to coding.
Let’s dive into these levels to understand better how they might apply to the future of coding:
Level 1: Assisted Coding
-
What Happens: Coders handle the bulk of the work but can request autogenerated code snippets to copy-paste or use as code completion.
-
Responsibility: Coders must validate and are ultimately responsible for all code, ensuring accuracy and functionality.
Level 2: Partly Automated Coding
-
What Happens: Coders primarily use the IDE to specify features, and the AI then modifies the code accordingly.
-
Responsibility: While the AI handles some coding, coders must validate all changes and remain responsible for the final output.
Level 3: Highly Automated Coding
-
What Happens: Coders use a more advanced interface, not limited to traditional IDEs, to specify features. AI can automatically handle specific tasks like fulfilling software tests, generating test code, reorganizing code for better maintainability, creating new user interface features, and proposing and testing solutions to errors.
-
Responsibility: Coders intervene in exceptional cases or when errors arise that the AI cannot resolve.
Level 4: Fully Automated Coding
-
What Happens: The developer’s role shifts more towards a Product Owner’s. AI can code features based on detailed specifications and autonomously handle errors—making adjustments, testing, and waiting for developers to review and commit changes.
-
Responsibility: The AI provider assumes a significant portion of the responsibility, especially in maintaining the integrity and functionality of the code.
Level 5: Autonomous Coding
-
What Happens: AI handles everything from coding new features based on persistent specifications to upgrading dependencies and fixing errors. It manages the full lifecycle of the code, including deployment.
-
Responsibility: AI becomes largely self-sufficient, significantly reducing the need for human intervention.
Progress toward these levels raises intriguing questions about the future role of human programmers. Will the specifications themselves not be in traditional code? Possibly. They may be in a more human-understandable form that can be translated directly into machine code, with the compiler doing most of the verifying of the machine code. Unlike human language, which can be ambiguous and harder for compilers to validate, this system promises greater precision and efficiency.
As we look to a future where coding is increasingly automated, it’s fascinating to consider how these changes will redefine the landscape of software development. It’s not just about the technology; it’s about how we adapt to these tools to ensure that they enhance our capabilities without displacing the creative and critical elements that define good software development. What do you think? Are we heading toward a world where coders are more supervisors and reviewers than active coders? The conversation is just beginning, and your insights are more valuable than ever!