One thought has been occupying my mind recently.
As AI systems continue to improve, where does the bottleneck move?
Historically, writing software involved two distinct challenges:
- Understanding the problem
- Translating the solution into code
For a long time, both were difficult.
Today, however, the second challenge is becoming significantly easier.
Modern AI systems can already generate substantial amounts of code from natural language instructions. Open-source models are improving rapidly, and frontier models continue to push capabilities forward.
This raises an interesting question:
If generating code becomes increasingly automated, what remains uniquely valuable?
I do not claim to know the answer.
But I have a hypothesis.
A Historical Parallel
Consider what happens when a program is compiled.
Developers rarely write machine code directly.
Instead:
Human Logic
↓
Programming Language
↓
Compiler
↓
Machine Code
In a sense, compilers already generate the final executable instructions.
Yet software engineers did not become irrelevant.
The bottleneck simply shifted.
Humans focused on:
- Problem solving
- Architecture
- Design decisions
- Trade-offs
while compilers handled translation.
AI May Shift the Bottleneck Again
Something similar may be happening today.
The amount of code directly written by humans may decrease.
The amount of guidance provided to AI systems may increase.
The bottleneck may move from:
Writing Code
toward:
Defining Problems
and
Communicating Intent
Articulacy May Become a Competitive Advantage
One skill that increasingly feels important is articulacy.
By articulacy, I mean:
The ability to translate thoughts into clear, precise language.
This sounds simple.
In practice, it is surprisingly difficult.
Many people know what they want.
Far fewer can describe it precisely.
The difference matters.
Vague Requests Produce Vague Results
Consider the difference between:
Build me a web application.
and
Build a React application using Redux for state management,
with authentication, role-based access control,
server-side pagination, and optimistic UI updates.
Both are requests.
Only one provides meaningful constraints.
The second request communicates intent more effectively.
As AI systems become more capable, the quality of instructions may become increasingly important.
Asking Better Questions
Another skill that feels increasingly valuable is asking the right questions.
Good questions often emerge from understanding how systems work.
For example:
- What are the trade-offs?
- What assumptions are being made?
- What constraints exist?
- What information is missing?
These questions frequently matter more than syntax.
The better the question, the more useful the answer tends to be.
Why Domain Knowledge Still Matters
A common misconception is:
If AI can write code, technical knowledge becomes unnecessary.
I am not convinced that this is true.
To guide an AI system effectively, one still needs to understand:
- Architecture
- Design patterns
- Framework choices
- Performance constraints
- Security considerations
- Operational requirements
In many cases, knowing what to ask requires understanding the domain first.
Open Source Models Will Continue Improving
Another observation is that open-source models appear to be improving at a remarkable pace.
Today's frontier models may remain ahead.
But history suggests that capabilities often diffuse over time.
What seems exclusive today may become widely accessible tomorrow.
This raises another question:
If capable models become available locally, what limits adoption?
Hardware May Become the Next Constraint
One possible answer is hardware.
A model can be open source and still be inaccessible.
Why?
Because running it may require expensive hardware.
Most people I know use laptops with configurations such as:
- 16 GB RAM
- Consumer CPUs
- Integrated graphics
If a model requires:
- High-end GPUs
- Large memory pools
- Expensive infrastructure
its practical adoption remains limited.
In that case, the bottleneck shifts again:
Model Availability
↓
Hardware Availability
The model may exist.
The ability to run it becomes the challenge.
A Possible Future
This makes me wonder whether future software development may increasingly look like:
Human
↓
Idea
↓
Clear Instructions
↓
AI System
↓
Implementation
In that world, human value may not disappear.
It may simply move higher up the stack.
Towards:
- Problem definition
- Architecture
- Communication
- Judgment
- Context
A Thought, Not a Prediction
I could be completely wrong.
Technology has a habit of surprising people.
But if current trends continue, I suspect the most valuable skill may not be typing code faster.
It may be:
- Thinking clearly
- Communicating precisely
- Understanding systems deeply
- Asking better questions
Because even if machines become exceptional at implementation, someone still needs to decide what should be built in the first place.
And that decision begins with a thought that can be articulated clearly enough for others—human or machine—to understand.
Top comments (0)