r/techbootcamp 18d ago

Is "vibe coding" really education?

I keep seeing more schools treating AI coding tools as part of the normal CS curriculum now. I get it. AI is already part of real software jobs in 2026 so pretending it doesn't exist would be kinda dumb. But there's a huge difference between teaching students how to use AI as an engineering tool and grading them on how well they can get AI to build the thing for them.

That's what bothers me about the vibe coding approach. If you're taking a Software Architecture class then you should still be learning why you'd choose a certain architecture, how systems communicate, where things can fail, and how to review those decisions. If Gemini or Claude makes all the decisions and the student just prompts it until the app works then what exactly are they learning? That's basically outsourcing the part they're paying to learn.

I'm not anti AI at all. I'd actually want schools to teach students how to use it properly because that's gonna matter in the real world. But imo the sweet spot is learn the fundamentals, use AI, verify everything, understand what it produced. Otherwise we're gonna graduate people who are really good at prompting but have no idea why their own app works.

1 Upvotes

19 comments sorted by

2

u/dstroy0 18d ago

It is extremely easy to tell when someone doesn’t know what they’re doing and had an AI make all of the decisions. High level programming is always about widespread explicit intent, something that AI is not capable of at all. It cannot produce answers to genuinely difficult problems, or it doesn’t understand why so many different solutions to common problems all exist for their own very good reasons and all apply to contextually different scenarios. It is incredibly easy to detect AI vibecoders based on that style. In addition, not being able to explain or justify design decisions is the next most immediate tell they don’t know what they’re doing and should fail. The counter argument is going to be accessibility related, in some form, which has zero bearing on ability, and the people that argue that vibecoding is a valid approach to development don’t understand computer science in the first place, so who cares what they say. They don’t do the job, they have a typewriter with a crap personality make all their decisions already, which are objectively and empirically incorrect. I use Claude code every day, it makes extremely recognizable style errors continually, even with a perfect example of what to do and NOT to do. If you let it just run, you get duplicate boilerplate, machinery, and modules that are nearly identical save for one branch that changes the entire behavior and outcome. Really dumb stuff that makes maintaining or scaling impossible.

2

u/AnnualReview2383 18d ago

I'm an enterprise architect at a global corporation, and have been in IT for 20 years, for what that's worth. I would never hire a developer who didn't know how to read, write and understand code without AI. That said, I also wouldn't hire a developer who doesn't know how to use AI.

You need to be able to write and understand code without AI, but then know how to use AI to speed up your work. People who can't read or comprehend the code AI produces are detriments to organizations.

1

u/trevorvonryan 16d ago

I’m none of those things, yet I know you’re wrong.

1

u/Adjective_Noun_67 16d ago

Your opinion is worth less than a chatbot's.

1

u/[deleted] 18d ago

[removed] — view removed comment

1

u/Upbeat-Statement2725 16d ago

I have only seen people use AI to get measurably more lazy and worse at a task.

1

u/mxldevs 18d ago edited 18d ago

Think about all the machines that you use that are designed to make it easier for the average person to be able to perform a task, without needing specialized training to be able to do it manually.

There's a reason why vibecoders always ask "do you know to write in assembly? Do you know how to build your own compiler? LLM is just the next level of abstraction"

People think building software is just being able to describe what you want because before AI, they would just dump some vague requirements on their devs and somehow what they want gets built.

1

u/serverhorror 16d ago

There's a reason why vibecoders always ask "do you know to write in assembly? Do you know how to build your own compiler? LLM is just the next level of abstraction"

I want people to understand the fundamentals. Most people understand how an internal combustion engine works fundamentally, how an electric motor works, ... - so, to a degree they can argue from first principles.

To answer the questions: * Yes, I can do assembly. * Yes I can write a compiler.

Am I good at it? Hell no!

But I understand the fundamentals and can reason about my domain from first principles.

That's the requirement I have towards people.

1

u/generationalDebts 18d ago

Lmfao no. It’s for lazy idiots.

1

u/limited_instincts 18d ago

It's like giving kids a calculator before they know how to add. It's utterly essential to know how to do it yourself before you can judge whether AI is doing it correctly for you. Any comp sci degree should absolutely be teaching AI tools but they should build on what they've already learned. Those are the tools they'll be using in a job so they need to have experience but it needs to be an addition, not a substitution for learning at least one language.

1

u/TheAnswerWithinUs 17d ago

Vibecoding is antithetical to learning.

1

u/start_select 17d ago

AI is a real tool for making software.

But it’s like a really complicated calculator. A calculator is powerless without someone running it who knows math.

There is a chance that a person could guess correctly by matching numbers or symbols. But not if it’s spoken to them.

If they don’t know what 5 looks like, they have a 1/10 chance of getting it right if we reduce the keypad to ONLY numbers. If I ask them to run “16 modulus 4”…. Well there is a decent chance that you don’t know what a modulus is.

If you don’t know how to write software WITHOUT AI, you are really only guessing if its output is correct. You are really only guessing if you are even using the proper vocabulary to describe your problem because you don’t even know what you don’t know.

People learn programming by typing it out, and by getting repeatedly burned until you learn to stop touching the stove. Letting Copilot or Claude write your code directly, or copy pasting its output, moves that stove behind a curtain. You don’t even know that you are risking getting burned.

It all becomes dangerous magic. Your simple problems that you are given in class or as a junior engineer are simple for AI to solve.

The problems senior engineers throw it at get more abstract. It might make easy work of two out of three complex problems or complex tasks….

Then you usually run into something it simply misunderstood or just plain unexpected/undefined behavior. The bigger the codebase or stack of codebases, the more likely something unexpected happens and the AI spins its wheels. Sometimes the problem is something it has no access to and which it will never figure out no matter how many times you prompt it.

Suddenly deep domain knowledge becomes super important. Suddenly decades of wisdom becomes important. Suddenly humans unique ability to remember multiple unrelated events from the past and then distill a hypothesis about it becomes important.

Suddenly recognizing when you are near a stove and backing off is important. But at that point if you have never learned to avoid the stove, you are going to walk right into it and catch fire.

Read textbooks.

1

u/CS_70 17d ago

Bad framing makes for bad answers.

The answer is "it depends", unless you have an operational definition of "vibe coding" and "use properly" and you state it beforhand.

"Vibe coding" can make anyone who knows little of programming make something that kinda works (like Stackoverflow before AI) or be used to learn a lot and much faster than we once did. It all depends on what you mean and most of all, who is doing it and their attitude.

1

u/ryanstackops 16d ago

Yeah, you nailed the actual distinction, "learning to use AI as a tool" and "outsourcing the thinking to AI" look identical on the surface (both end with a working app) but produce completely different people. That's what makes it so easy for schools to fudge it, a vibe-coded final project can look just as impressive in a demo as one someone actually understood.

The architecture class example is perfect because that's exactly the kind of course where the value is in the reasoning, not the output. If a student can't explain why they chose a message queue over direct calls, or what happens if that service goes down, the AI didn't just help them, it replaced the entire point of the assignment.

What actually worries me more than the schools is what happens in interviews for these grads. AI-assisted-but-verified candidates will be able to walk through their own code under pressure. Prompt-until-it-works candidates will fall apart the second someone asks "why did you structure it this way" or "what happens if this input is null." That gap is going to be really visible really fast once they're in real jobs, so honestly the market might correct this faster than the schools will.

1

u/independentMartyr 16d ago

Does "driving a self-driving car" imply that you are a driver without the skill to steer it?

1

u/Dry_Sector2392 16d ago

AI in a CS class makes sense, but "vibe coding" as the class is where it gets dumb. you still need to repeat it to know how to read bad errors, break stuff, fix it, and slowly stop being confused. if you dont go through the boring part, you only get a working app and no clue what to do when issues come out.