Programmer explores risks of learning code with AI before understanding fundamentals
A developer reflects on building production systems with LLMs while lacking deep comprehension of their own code.
What to know
- A developer built a sophisticated system using LLMs without formal CS training, then discovered during production that gaps in understanding masked by AI assistance could undermine system reliability.
- The core tension: LLMs can accelerate idea-to-code velocity, but may leave builders without the deep knowledge needed to maintain, debug, or own their systems long-term.
- Experienced programmers worry LLMs could displace programmer jobs efficiently, risking 30-40% unemployment among knowledge workers with unpredictable economic consequences.
- A practical distinction emerges: LLMs work best for falsifiable, verifiable tasks (code that runs or doesn't, is shorter or isn't) rather than open-ended design decisions.
Anonymous reader Self-taught programmer using LLMsMark Seemann Software engineer and economist
How it unfolded 2 developments, newest first · click a bar or a number to jump articlesposts
-
2
Mathematician endorses post's advice on verifiable LLM use
A respondent praises the blog's implicit guidance: asking LLMs questions with objectively verifiable answers (e.g., code brevity, correctness) rather than open-ended design decisions.
-
The part about "falsifiable questions" explains why AI code reviews are usually okay and AI-generated code is not. It's relatively easy to check if a bug described by LLM exists, but (as you already said) it's hard to verify behavior of a complex vibecoded program.
2 more of the top 3 · 33 posts in this stretch
-
Finally a thread to traumadump my anxieties!I have been trying to learn programming unsuccessfully for many years (I still ocasionally get a burst of energy, try something, then eventually abandon it halfway). In the end, I just accept that I don't have the kind of thinking that makes this effort enjoyable and I cannot achieve anything good.But…
-
C
This is a thoughtful post: https:// blog.ploeh.dk/2026/09/16/on-le arning-programming-in-an-age-of-llms/ It's worth reading the whole things. It finishes with some great (implicit) advice: "I tend to ask them questions that yield verifiable answers. Can I make this Haskell expression more succinct? Any useful answer to such a question is a code…
-
-
1
Experienced programmer expresses ambivalence about LLMs' impact on programming competence
The blog author, an economist with 30+ years in software, reveals skepticism about LLMs while acknowledging their power. He frames the broader concern: if LLMs displace programmer jobs efficiently, mass unemployment among knowledge workers could destabilize the economy.
“It's usually when it impresses me the most that I resent it maximally.”
— Mark Seemann, blog author -
2 outlets Learning Programming in an Age of LLMs
first by HN Best, 11d ago · also HN Frontpage
-
I'm the author of Python Crash Course, and I got this exact same email this week. I was thinking of writing a public response as well, because any attempt to sincerely answer these questions takes something along the lines of a full post. It's also worth a public response because many people who are getting into programming for the first time…
2 more of the top 3 · 3 posts in this stretch
-
I'm a software engineer, I do software development but also system maintenance, and I do handle networking and telephony systems, and work with some juniors. Working with AI is problematic. It can speed up you but at the same time delay you. For the system maintenance part sometimes you need to do a lot of stuff fast and in various machines and…
-
"The same kind of argument was used when China was admitted to the World Trade Organization. And indeed, lots of new jobs were created, just not in the Western world."China's entry into the WTO is really not a good evidentiary example for AI causing mass unemployment. Unemployment in the U.S. had already been increasing at the time, peaked soon…
-
-
background
Developer describes building production system with LLMs despite knowledge gaps — A blog post shares a letter from someone who used LLMs to build a large TypeScript/JavaScript system without formal CS training, reporting initial success that later revealed fundamental misunderstandings when moving to production. The reader describes dependency on continued model assistance to fix cascading errors.
What people are saying 18 voices from 2 sites · best of 36 · verbatim
- Sep 18
-
I feel like people greatly over-estimate the effort it takes to just learn *some* programming. A decade ago, it felt normal that teenagers wrote phone apps and web apps and roblox games etc. etc. Teenagers! Kids! Who have screen addictions, in between their school work and fencing lessons! And now we're supposed to just assume that because AI…
-
It comes down to the complexity of specification and reusability. A bounded component providing specifiable behavior (even as traditionally difficult to get right as concurrent behavior) is a great candidate for agent synthesis because verification with the assistance of an agent is much cheaper than building it oneself and then still having to…
-
I find reading the dialogue between a vibecoder and an experienced programmer interesting and useful. Particularly when both parties are of high quality like here. My first thought on this was … beware what you ask an AI to build, because *something* will be built, but it might not be the *right* thing. The statement that “programming may be a…
- Sep 16
-
> Now, if you can steer an LLM reasonably well, you can quickly build an MVP that goes well beyond your own understanding of the implementation.Pre-LLM, I'd distinguish between e.g. "I know Python" and "I know this codebase". So if I wrote a codebase in Python I'd be familiar with it, if someone else wrote a codebase in Python I'd be familiar with…
-
My earnest, non-sarcastic advice to anyone considering learning to code is to find something else that interests you.While there is possibly some time left before the software industry implodes, hobbyist software will also get steamrolled so I would in the strongest terms possible guide someone to find something that makes them happy and to pursue…
-
I think there might be a take on learning with AI vs the pressure to develop fast. AI could be an amazing tool to learn. But who wants to learn when you had to deliver 3 days ago? The corp culture is kind of what is killing it. Not sure how things are going in universities tho. If you stop and use it to learn, take time, ask questions. I am sure…
-
To me software engineering was often about: how do we structure the project so that the crappy code the other students/co-workers write don't break everything?Not because everyone writes bad code. They do, at-least the do first time you read their code. You only think someones code is decent when you spent 3 hours trying to refactor their PR, and…
-
> Still, I doubt that it's possible to significantly speed up human learning. The bottleneck is hardly the teachers nor the materials, but how fast a human brain can absorb new knowledge.I completely agree with it. LLM might be able to 10x the number of PRs, and maybe that is actually is fine for the company because it doesn't care too much about…
-
> After months of refactoring I had an uncomfortable realization: I may have built a system that is above my own level of understanding. When everything works, that gap is almost invisible. When it doesn't, it becomes very real.> "Sometimes I genuinely don't know what to do next without asking another model. That made me wonder whether I spent a…
-
I've been thinking about this in the context of learning new languages and tech. In pre-LLM days it was fun to sometimes try to implement a new idea in a new language or stack and build up an understanding by trial and error. You'd have to accept that it will be slower to get going than a familiar set of tools and maybe only trade out one old tool…
-
I suspect my opinion on this won't be very popular, but it's like driving a car. If you're going to learn how to drive four wheels, you should start by taking the motorcycle safety course and learn on two wheels first. We can discuss why later.Taking that concept to programming, I wouldn't start with a desktop or a web app. I would start with a…
-
i might never know what it's like to learn programming after LLMs became powerful (I started programming in ~2002). But if someone forced me to give advice to such people, I'd say just start building things and stay curious.That means, use LLMs to build whole sites and then dig in where you are curious. Look at the code, ask your LLM how it works…
-
one thing ive found fascinating recently was re-taking some of the best tutorials i've ever taken (catlike coding, libtcod roguelike, etc), and asking astra to just transpile them into other technologies, stacks, or languages. Including all the garden paths, false starts, and dead ends, because the tutorial author included those intentionally. I…
-
A good question might be: what do I want to be ? A good prompter ? It's like someone who used to bee a good chef but is now good at ordering at uber eats. Even for a junior: being a good prompter may not be enough.We tend to think that we make a program, but (writing) the program also makes us what we are. It is what we do that defines what we…
-
This is an issue that's very real for me right now because I'm in the middle of teaching my own kids programming, and we've been working on it for years at this point. I'm watching AI seemingly invalidate the premise behind learning all of it. It's been a pretty depressing change to be honest, because I love programming and watching this happen is…
-
(sorry pasting from 4 days ago but IMHO perfect fit)The same reasons we keep on teaching kids to read, write, do math, sketch, take photos, etc ... because it is fun, empowering and important.Most of them will never become professional actors, authors, mathematicians, artists, photographers, etc ... and yet they will rely on those skills, on their…
-
I answered this to myself - stop worrying about LLMs. It's pretty simple: due to Curry-Howard isomorphism, programming languages are just notations for some type of formal logic.Now ask yourself a question, what language do you want to maintain the programs in? Do you think natural language is going to be easier and more maintainable than formal…
-
> Just five years ago, the only way to build a working project of moderate complexity was to learn the basic to intermediate concepts required to make an MVP.> Now, if you can steer an LLM reasonably well, you can quickly build an MVP that goes well beyond your own understanding of the implementation.Somewhat agree. Five years ago you could build…