Posted by JohnDSDev 3 days ago
Ask HN: How much coding should beginners learn in the AI era?
for ai research, safety, aerospace, military, trading, gamedev .. those will probably still need coding for a bit longer.
An analog for you: I started in software pre-cloud, with a primary focus on web technologies, but at various times learned c/c++/asm/compilers/operating systems/algorithms. I audited many classes, but one instructive one was a course called nand2tetris (going from nand gates to hardware simulated CPU to peripherals to operating system to programming languages and compilers to application layer). Understanding the global through lines in computer science give you immense power.
Does my work as a CTO mean I use this information all the time? Absolutely not. Did I benefit from figuring out how computers work generally throughout literally my entire career? Absolutely yes.
I am actually relatively AI-pilled compared to the average Hacker News reader, but I am against outsourcing fundamental understanding to AI in all forms. Does that mean I write code by hand often anymore? Very infrequently.
The better question is: how much independent judgment do you need before delegating implementation?
You should learn enough to:
- turn vague requirements into interfaces, invariants, and tests - read a diff and explain what it actually does - debug without asking the same system that wrote the bug - recognize when the architecture is wrong rather than continuing to patch symptoms - reason about state, concurrency, failure, security, and cost
That probably means learning one language deeply, plus basic data structures, databases, networking, operating systems, version control, and debugging. Not because you will hand-type every line forever, but because those are the mental models required to supervise an agent.
The curriculum should change, not shrink. Less time memorizing syntax; more time decomposing problems, reading unfamiliar code, testing behavior, instrumenting systems, and understanding failures.
I would use AI early, but periodically remove it. If you cannot build and debug a modest program without the agent, you do not yet know whether it is accelerating you or substituting for understanding.
A practical rule: on’t merge code you can’t explain, and don’t deploy a system whose important failure modes you can’t enumerate.