Why AI Makes Coding Education More Important, Not Less
By Mark Warschauer
If artificial intelligence can write code, should students still learn programming?
It’s a reasonable question. AI coding tools have evolved rapidly. What began as autocomplete for programmers has become something much more powerful: systems that can generate apps, revise software, debug errors, and respond to natural-language instructions. Increasingly, users can describe what they want rather than manually implement every detail.
Faced with this reality, some people are drawing a simple conclusion: perhaps coding education is becoming obsolete. Why require students to struggle through syntax and debugging if machines can increasingly handle those tasks automatically?
I think this conclusion gets the problem backward.
Artificial intelligence does not make learning to code less important. It changes what learning to code should mean.
Coding Is Changing
For decades, learning to code often meant learning syntax first. Students worked through variables, loops, conditionals, and debugging before they could create something personally meaningful. This approach made sense when writing software required manually constructing programs line by line.
But AI is changing the nature of programming itself.
Increasingly, software development involves collaboration between humans and AI systems. A person defines goals, sets constraints, evaluates outputs, tests behavior, and revises solutions. The AI handles more of the mechanical implementation.
This shift matters far beyond professional software engineering.
Scientists increasingly create simulations and analysis tools. Teachers design educational applications. Artists build interactive experiences. Small-business owners automate workflows. Many of these people are not—and may never become—expert programmers. Yet AI is making computational creation newly accessible.
The challenge is no longer simply whether people can write every line of code themselves.
The challenge is whether they can direct and supervise increasingly capable computational systems thoughtfully and effectively.
From Computational Thinking to Computational Agency
For nearly two decades, educators have emphasized computational thinking: the ability to break problems into parts, recognize patterns, reason algorithmically, and design computational solutions.
These skills remain essential.
But AI introduces a new challenge. Students increasingly need to learn not only how to think computationally, but how to act computationally through AI systems.
I think of this as computational agency: the ability to use computational tools—including AI—to pursue meaningful goals, evaluate outcomes, revise work, and remain responsible for what is created.
In an AI-rich world, students need to learn how to:
define meaningful goals;
communicate intent clearly to an AI system;
evaluate whether proposed solutions make sense;
test whether systems actually behave as intended;
identify errors, limitations, or unintended consequences; and
revise and improve results iteratively.
These are not secondary skills. Increasingly, they are central to computational work.
Why Coding Projects Matter
One concern about AI in education is that students may outsource thinking. They may accept AI outputs uncritically or bypass opportunities for learning.
These concerns are real.
But coding may offer a particularly powerful context for learning with AI rather than merely consuming AI-generated answers.
Why?
Because coding projects are relatively concrete and testable.
A game either behaves as intended or it does not. An app either solves a problem or it does not. A simulation either works or it fails.
Students cannot simply accept plausible-looking output. They must test, critique, troubleshoot, and revise.
This creates an opportunity for agentic coding in education: students working with AI coding systems to iteratively design, test, refine, and share meaningful computational artifacts.
Rather than asking AI for answers, students use AI to build things.
Teaching Coding After AI
What might coding education look like in this new environment?
It does not mean abandoning programming fundamentals. Students should still learn core ideas such as algorithms, abstraction, debugging, and programming logic. And many students should still learn to read and write code directly.
But AI may change the order in which students participate meaningfully in computing.
Instead of spending weeks mastering prerequisite syntax before creating anything interesting, students can increasingly begin with ideas:
a game about climate change;
an interactive story;
a simulation of an ecosystem;
an app that solves a problem in their school or community.
Through interaction with AI coding tools, students can begin building, testing, revising, and improving meaningful projects much earlier.
Importantly, this does not eliminate productive struggle.
It relocates it.
Students still face difficult questions:
What exactly should the project do?
Why did the system behave unexpectedly?
What assumptions did the AI misunderstand?
How should success be evaluated?
What revisions would improve the result?
These increasingly resemble the kinds of thinking that characterize real computational work.
Why This Matters
The debate about AI and coding education is often framed too simply. Either AI will make programming obsolete, or schools should continue teaching coding exactly as before.
Neither position captures the moment we are entering.
Programming is not disappearing. It is changing.
And as programming changes, coding education must change too.
In many ways, AI may strengthen rather than weaken the rationale for broad participation in computing. As computational creation becomes more accessible, more people—not fewer—will need the habits of mind associated with computational work: judgment, critique, iteration, problem decomposition, testing, and human direction.
The question is no longer whether students should learn to code in a world where AI can increasingly generate software.
The question is what learning to code should mean.
Acknowledgment: I would like to thank Bin Yu for sharing ideas that sparked and shaped my thinking about the relationship of AI to coding education.



Many of the professionals whose talks I go to, for example most recently a Google Lead Engineer, share the same sentiments. For a student like me this is good news
I’ve been having this discussion with many of my colleagues that code and as a former educator, I completely agree that it is not a simple argument of whether to teach coding or not. Just like with many things as a teacher it’s important to harness and utilize the tools in the way we teach. AI changes the way we approach what we learn. I believe we need to consider some of the steps you mentioned like explicitly teaching ways to evaluate against foundational knowledge, etc. Great article.