Paul Graham talked about this in a recent essay: "Should students still study computer science if AIs will write most code? ... even if you have AIs writing all your code for you, you're still in the position of an…
"Should students still study computer science if AIs will write most code? ... even if you have AIs writing all your code for you, you're still in the position of an engineering manager, and good engineering managers should be able to do the work of those working for them."
Paul Graham. August 2026 https://paulgraham.com/prepare.html
I think that argument makes a lot of sense and coincides with my experience. I code all my projects, and I only use AI as a teacher, or bug finder. Again and again I see AI giving me a complicated, confusing code for something that could be much simpler, cleaner and organized. If I let AI write code I do not completely understand, sooner than later it all becomes a great mess that not even that AI can understand.
Still there are a lot of people who say that learning to code is not necessary. What do you think - Should we learn to code? - If you already know how to code, do you keep learning? - What are your experiences?
41 comments
I refuse to give my intellect over to the machine just to blindly consume its homogeneous excretions. I will keep doing what I've always done regardless of how well an AI could do it. I don't need to justify doing so, and neither do you, nor does anyone. It's OK to be a human.
I guess a lot of folks really did just get into programming for the money and hated every minute of it.
I was trying to fix a bug in ART using Frida. I admitted I knew nothing about the intricate details or tricks of ART. I couldn't even understand why the original author wrote the code in a certain way. Feeling lost, I turned to GPT. But because I couldn't understand the AI's complex reasoning, I couldn't guide it. The AI stubbornly blamed a conflict between Frida and JVMTI and ran in the wrong direction for an hour with zero progress.
Eventually, I gave up on the AI and decided to debug it myself. I couldn't afford to read the whole ART codebase to understand the full context. But in the AI era, the cost of getting a quick summary is near zero. With AI helping me grasp the big picture, I pinpointed the actual bug: a compilation callback issue during ART's transition between runnable and native states.
Before, finding this bug would have required days of reading ART's code. Now, with AI helping me understand something I'm completely unfamiliar with, it took just 1 hour.
My key takeaway: AI is incredibly useful, but if you just say "I don't understand, you keep going," you'll be stuck forever. You still need to learn things.
This is exactly why we should still learn to code. AI is a powerful tool for lowering the cost of understanding, but it cannot replace the human ability to judge, guide, and intervene. You need to know enough to be the manager.
As an intellectual exercise, sure.
I don't have a crystal ball, but in my opinion, if you are asking in the context of employment, I think it's very hard to know, and I'd probably recommend against it if you are starting from scratch. Right now, I think that having experience with coding helps me work much more effectively alongside LLMs. Given the progress in the last five years though, I can't be certain that I will be needed in another 10 years. I already recommend against majoring in computer science with the goal of becoming a software engineer. I don't think that the role will go away, but the number of people needed might be much smaller in 10 years, and I wouldn't want to be a new grad in that kind of market.
> If you already know how to code, do you keep learning?
I'm sure others feel differently, but personally, I find it quite annoying to learn new things right now. 5 years ago, if someone came out with a new tool for say, durable workflows, or a new JS framework, I knew that they poured many days of labor and love into the project. They spent many hours thinking through what they were building and the tradeoffs and edge cases. Now, there's just an avalanche of new projects out there and it's hard to separate the wheat from the chaff. Personally, I'm more focused on developing soft skills right now.
First, if the AI is unavailable, you at least have a backup plan. You can make changes to your website or web app even if Claude or Codex or whatever else is available. That's useful if you're using third party services.
Secondly, it lets you delve into the code and understand where things have gone wrong if the agent gets stuck in a loop or keeps making poor decisions. If you let the AI handle everything, then you're up a creek without a paddle if said AI gets stuck and can't make any progress.
Finally, it's sometimes quicker and more efficient to make a change without using AI, especially if it's a small scale one. Lots of times I've wanted to add a new form field or tweak some random CSS rule, and being able to do that myself made things a lot quicker.
This is a huge simplification. AI is also trained on tweets, spam and explicit content, but ChatGPT isn't constantly swearing at you to send your bitcoin to a Nigerian prince.
The mistake people make here is that just because something is represented in the weights, doesn't mean it's representative of its output. And the reason for that is largely the same reason for why if I show you lots of bad code you don't become a worse coder. If anything you'll see bad code and learn to avoid writing similar code yourself.
So long as quality is being reinforced and that process is refined and improved then "model collapse theory" and arguments about how AI will write bad code because it reads bad code will continue to prove incorrect.
I do not mean to anthropomorphize their work, but I do need to improve what they produce. I think a lot of push-back to vibe-coded projects is that the person asking an AI Agent to make something do not or cannot improve what it produces, which goes back to the question asked. Is it worthwhile to learn programming now. I argue that it is.
So, it would be better if models were trained to produce provably correct code, and agent harnesses are improving to help do this, but the models themselves have been shown to be trained to provide the answer they think you want to hear, and declare a task done as fast as possible. They hallucinate (or lie) about running tests, even about writing code at all (sometimes).
How do cloud models "learn" to write better code? Where are the projects that fine-tune an open/local LLM to "learn" from its mistakes. I have yet to see any model improve on its own.
A lot of the best code I've seen is closed source, and unlikely to be represented in existing training data. A lot of the worse code I've see was online. Maybe newer coding models are getting trained better, but most I've tried are years out of date. Maybe my view is affected by trying so many LLMs. Very few have been great.
In life I learn a lot from my mistakes, not much from others' mistakes. Could we apply that to AI and code?
Read the full thread on Hacker News →
Related stories
- The Verge · 0 points · 3 days ago
- Can you forget how you feel about Meta?theverge.comThe Verge · 0 points · 9 days ago
- The Verge · 0 points · 5 days ago
- Hacker News · 73 points · 9 days ago
- Can John Ternus find Apple’s next big thing?theverge.comThe Verge · 0 points · 10 days ago
- Hacker News · 421 points · 6 days ago