Mirror Review
June 25, 2025
Is artificial intelligence the end of programming as we know it?
While AI coding assistants are changing the industry, GitHub CEO Thomas Dohmke assures that the fundamental need for manual, hands-on coding isn’t going anywhere.
This article explores the core arguments behind the GitHub CEO’s Manual Coding Philosophy, proving that a developer’s touch remains irreplaceable.
The Hybrid Future: AI as a Copilot, Not the Pilot
The central argument is that while AI tools can generate code, they are most effective as a partner to, not a replacement for, human expertise.
Dohmke believes in an ideal workflow where developers use AI for assistance but also have the skills to intervene directly.
This hybrid approach increases productivity without sacrificing quality.
So here are 10 proofs of the enduring importance of hands-on coding.
1. Inefficiency Due To Over-Reliance on AI
Relying on AI for simple fixes can be counterproductive.
Dohmke warns that trying to explain a simple change to an AI, in natural language, can take far longer than a skilled developer making the edit directly.
He notes, “The worst alternative is trying to figure out how to provide feedback or prompt to describe in natural language, what I already know how to do in a programming language”.
2. The Indispensable Need for Human Review
We all know that AI-generated code is not flawless.
Research shows that roughly half of all AI code samples require correction by a developer.
Therefore, it’s clear why human review is essential to ensure quality and correctness.
Even at Google, where over a quarter of the codebase comes from AI, every line is strictly reviewed by engineers.
3. Engineering Is a “Craft”
Software development is more than just writing lines of code; it’s a “craft” that must be developed.
Dohmke states that engineering is about having the skill to break down large, complex problems into smaller, manageable parts.
Such a mode of thinking requires human intellect.
4. The Challenge of Large-Scale Systems
Building and maintaining massive, complex systems that the world relies on requires deep expertise.
This is a task for senior engineers who understand architecture and scalability — a level of understanding AI has yet to achieve.
5. The New “Vibe Coding” Trap
There is a concerning trend dubbed “vibe coding,” which involves programmers heavily depending on AI without fully understanding the output.
“Vibe Coding” is especially seen in startups that might mistake rapid prototyping for stable development.
Such practice can lead to significant technical debt, security vulnerabilities, and fragile systems.
The Idea Behind GitHub CEO’s Manual Coding Statement
6. The Value of Fresh Ideas from Junior Engineers
Dohmke is a strong believer in hiring junior engineers because they bring new energy and fresh perspectives.
He states, “It’s lovely to see that those folks that bring fresh ideas, a great amount of energy, the latest learnings from college and university, and often a different, diverse background into the company”.
This blend of new ideas is crucial for innovation.
7. Young Engineers Are Natural AI Adopters
Younger programmers are often early and enthusiastic adopters of AI.
“They get it because they are taking this with an open mind,” Dohmke says, noting they aren’t constrained by traditional methods.
Therefore, younger programmers are perfectly suited for the modern, AI-assisted workplace.
8. Prompting Skills Are the New Frontier
Soon, demonstrating your ability to work with AI will be part of the job interview!
Dohmke predicts that companies will ask candidates to show their “prompting skills, your co-pilot skills,” making AI literacy a core requirement.
9. AI is a Productivity Booster, Not a Replacement
Rather than eliminating jobs, AI is helping to cope with the persistent shortage of skilled software engineers.
The technology automates repetitive tasks like writing boilerplate code, freeing up junior developers to be more productive.
This, in turn, allows senior programmers to focus on higher-level architectural problems.
10. The Developer’s Evolving Role
The role of a developer is shifting from pure coder to “AI orchestrator.”
In this new standard, engineers guide automated tools and act as the final guardians of software quality.
Yet, the goal remains the same: to solve problems and get the job done well, regardless of the tools used.
End Note
Even as AI agents become more autonomous, GitHub’s CEO is confident that engineering jobs will not disappear.
He believes that the future of development lies in a balanced and collaborative model.
The most successful engineers will be those who can seamlessly blend their fundamental manual coding skills with the power of artificial intelligence.
In conclusion, this shift isn’t the end of programming, but a reminder to upskill our craft and implement a more strategic approach with the help of AI.