I started learning Python, SQL, and VBA a little over a year ago, and I now use them in my current job. At first, programming was difficult and sometimes tedious, but solving problems and getting programs to work was genuinely exciting. After discovering AI coding tools—especially Claude Code—I started questioning whether learning programming or pursuing an applied computer science degree still makes sense.
Using AI, I can work on a .NET web application without knowing much C#, JavaScript, CSS, or HTML, and I can create or fix Python and VBA code much faster than I could on my own. It sometimes feels as though traditional programming skills are becoming obsolete, especially when AI can produce working software with very little effort.
I'm considering starting a computer science program this autumn, but I'm unsure whether the cost and time are worthwhile. I've also struggled to study consistently on my own. Is it still sensible to learn programming for a career, or to pursue a CS degree? If so, how should someone learn when AI can generate an application so quickly? I'd appreciate practical advice on what fundamentals are still important and how to use AI without becoming dependent on it.
4 Answers
I wouldn’t frame this as learning programming versus using AI. AI is excellent at repetitive, well-documented coding tasks, but it’s much less reliable at deciding what should be built, understanding ambiguous requirements, handling unusual edge cases, and choosing an architecture that will remain maintainable. Those decisions are a large part of professional development, and they require technical knowledge and communication skills.
I’ve noticed that AI-generated code seems less impressive the more programming I learn. The tool probably didn’t get worse; I became better at spotting incorrect assumptions, fragile designs, and hidden bugs. That’s why fundamentals still matter. A degree can be useful if you benefit from structure, feedback, and access to internships, but don’t pursue one solely because it guarantees a job. Whether you study formally or independently, build real projects, test them, read the generated code, and learn enough theory to explain and maintain what you create.
AI can make a junior developer much more productive, but it doesn’t automatically give them the judgment of an experienced developer. The strongest combination is a competent programmer who uses AI effectively. You can absolutely learn with AI, but ask it to explain its decisions, compare alternatives, write tests, and point out weaknesses instead of simply accepting the first solution it produces.
The main issue is that you may not yet have enough experience to recognize when generated code is poor. AI can produce something that appears to work while having serious architectural, security, performance, or maintenance problems. It’s similar to asking someone without engineering knowledge to evaluate a bridge design: the result may look convincing, but they won’t know what they’re missing. Learn the fundamentals so you can review and direct the tool rather than blindly trusting it.

That makes sense. I can tell whether a small script works, but I probably can’t judge the long-term quality of a larger system yet.