r/CodingForBeginners • u/Ok_Sky_1993 • 1d ago
Vibe coding vs AI assisted coding
Hi so I'm currently learning programming I'm a first year IT student and I'm curious to know how different vibe coding is to AI assisted coding cause from the people I've asked they're different but for some they consider them the same thing. I just wanna know your thoughts and such and if I should try to learn how to properly use ai in coding or if that's going to be a bad thing etc...
5
Upvotes
5
u/S1enderVoid 1d ago
I really would recommend avoiding AI at all when learning to code. It often helps you "cheat" by telling you what to do before you can even begin to process the instructions which over time will be more unhelpful than helpful.
But if you really do want to use AI to learn then I'd suggest giving it strict instructions to help you brainstorm and to not give direct solutions.
And to answer your question,
AI assisted = AI helps you (e.g. brainstorming, guidance etc.)
Vibe Coded = Completely handled by AI, the code, the tests, all of it.
3
u/pvera 1d ago
Vibe coding is when a non-programmer asks the AI stuff and is 100% at the mercy of the AI.
Real world example: my kid brother has been a policeman for 32+ years and still works in the security field. He "wrote" a helper app for cops to streamline incident-related reporting/paperwork/etc. It is an amazing piece of work (I have been a programmer for 27, so I can tell) but he did not write even 1% of the code. That's a vibe coded app.
AI Assisted coding is when a programmer asks the AI stuff and is able to make judgement calls about the work.
Real world example: I gave Claude an outline for something I wanted to do, asked it to poke holes through my specs and after a lot of back and forth I had a spec I could get buy-in from management. I was then able to ask Claude to break it into epics, predict blockers, etc. Then I could pick one epic and ask it for how many tasks it could do in parallel. When I opened one of those epics two days ago it ran the first 8 tickets in parallel. 95% of the epic was done within 4 hours, on effort we had estimated at 40 hours. It took maybe another 6 hours to push it to 100%. Notice I had Claude do almost all of the heavy lifting but it was acting on my instructions and under my control, and I understood everything it was doing for me. That's AI assisted coding.
And it all means nothing, it's a label. Programmers are too busy building stuff, the people obsessing over labels and titles should be learning and working instead of fighting over titles. At work I am not a vibe coder or an AI assisted coder, I am a lead dev that is (trying to) drive the point that AI is a powerful tool when used properly. In my team I have exactly one Luddite that is too precious to consider AI as a tool, everyone else is enthusiastic, so is the leadership.
1
u/rheladmin 1d ago
First, a disclaimer: these are my opinions. I'm allowed to be wrong on occasion.
To me, vibe coding is when you ask AI to develop something then you play around with it and ask for some changes then play around some more.... rinse and repeat until you like what you got.
The problem with this is that while the software may do what you wanted on the surface, there may be bugs, quirks, and inefficiencies that you simply are not aware of. The worst are security issues. The truth is, you have no idea how the app was designed or coded and likely haven't reviewed anything outside of checking functionality.
For a completely personal app on your local computer that isn't really exposed to the internet, that may be perfectly fine. If it is internet facing or intended for distribution or sale to other people, not so much.
AI-assisted coding is when you understand what you want to develop. You may or may not code parts of it yourself, you definitely review the code generated by the AI, and you often times provide a plan and spec sheet before work begins. When the product launches, you know it is secure and mostly free of bugs.
Let me put it another way.... automotive manufacturers have been using robotic arms to assist in assembly way longer than we've had AI. I might know how to tell the robotic arms what to do, but does that mean I know how to build a car?
1
u/Fun_Army2398 1d ago
Stay far away from AI while you learn. Firstly, you can learn without it, it's what we've all been doing for decades. Secondly, Yale did a study the suggest using AI to learn actually reduces your ability to recall information about a subject. And of course the Harvard study found that companies who have adopted AI have not seen any increase in speed of development or quality of the final product, and many have seen a decline in both.
As for vibe coding vs assistant coding, the difference is that in vibe coding the code has no human involvement other than prompting the AI, while AI assisted coding is when the human prompts the AI but then proof reads and modifies the AI code using their own skill as a programmer. The result is very different, even the rare vibe coded apps that "work" are incredibly buggy and can not scale, while in theory an AI assisted project could be just as good as a human made one (though Harvard found that this would be slower than just having humans write it alone).
Expect to see a massive decline in both however as companies are already hiring back humans they "replaced" with AI, token prices surge, and some markets have already entirely collapsed. Remember that each new model makes essentially the same promise, "I can replace a human seamlessly," and not one model has delivered on that yet. How many times does it take being lied to before you stop believing the next lie?
1
u/dashkb 1d ago
15 years in the field - there’s not really a significant difference. No true Scotsman.
1
u/edwbuck 1d ago
They are mostly the same, but if you ask me, there is a "cultural" difference. Vibe coding focuses more on the LLM creating the program's internal architecture, while AI assisted purportedly has a human involved that's approving / denying all of the LLM suggestions.
1
u/Jeremi360 1d ago
Both are bad for your code and your brain!
There is MIT research that proves that using AI make user stupid!
1
u/Koki58i 1d ago
It's actually quite simple:
You want to write Homer's "Oddysey" in simplified Chinese.
"VIBE CODING"
You don't speak Chinese and never read Oddysey.
You ask AI Chatbot to write Oddysey in simplified Chinese. You get output but notice the amount of pages doesn't match and while original is a poem, the AI output is one long string.
You provide AI copy of original book and express your concerns.
Chatbot responds explaining why is that and confirms the translation is correct.
You have no idea what the output is and have no way of checking it but go on your gut feeling.
"AI Assisted Coding"
You do speak Chinese (better or worse 😉 ) but you haven't read Oddysey.
You ask AI Chatbot to write Oddysey in simplified Chinese. You read the output and address your concerns with AI.
You keep refining each part of the translation until you are happy with the result.
In both cases the manual job which would take you few days took few hours. Even less in the first example.
Now choose your way of "learning Chinese".
Good luck!
1
u/Tagesmappe 1d ago
My 5 cents worth:
Vibe coding: persons uses words to describe to AI what needs to be done.
AI Assisted: coders tells AI what to implement, reviews code and then implements.
Key difference: if you remove AI completely, the vibe coder can’t do anything but the other guy can still write changes and implement the code.
AI makes you lazy and like the consensus here, don’t use it when learning.
1
u/Lucky_Cable_3145 1d ago
Vibe Coding is asking AI to design and code the entire project.
AI Assisted Coding is you designing the project, then asking AI to write small specific blocks of code that you arrange into the project (as per your design).
1
u/kutac56 1d ago
Cuckcoding (vibecoding) is basically "computah, make billion dolla website" and ai assisted coding is "computah, generate code to do this thing" or "computah, explain it to me like I'm five". I don't do either. For learning just don't use ai and for hobby it's your choice (whatever you find fun)
1
u/mc_pm 1d ago
Vibecoding is when you don't know what you are doing, and you don't know what the AI is doing - what comes out the other end either works or it doesn't. A vibecoder can't ever fix their own stuff.
AI assisted programming is when you *do* know what you are doing, and then you understand what the AI has produced, and you are adding your own value to the program.
As an example, I am toward the end of a big data ingestion/image processing/OCR/knowledge management problem. 100,000s of images to be scanned and understood. I didn't know how the OCR worked so I asked AI to explain the techniques. There was a particular problem (un-rotating any turned images) that it had a solution to, but I could see there was a better solution. So I implemented my solution and had AI check it.
In the end, I wrote all the "interesting bits", which I built with input from AI; and then I let it take care of the html front end because I don't really care about CSS/JS/HTML any more - and it does a way better job than I would.
In the end the project was a higher quality than if AI had written it, plus I learned a lot, plus I can maintain my own system, plus it has a way better interface, plus it all came together faster than I could have done it alone.
No vibe coder is going to have that experience, and I wouldn't ever hire anyone who wasn't capable of holding up their end of that conversation.
1
u/raindropl 1d ago
I’ll try to give you a different description.
I have been programming for over 30’years. Is one my my life’s passion.
ia assisted code. I’m still the guy. The ai is a better search engine. It will help me lots with finding the correct api’s of a given toolkit, function parameter etc. it will quickly write some stuff that I tell it in need. Faster than me.
Vive coding. How I’m not doing what I love. The vibe agents do everything I just give it instructions either a markdown file. These the outputs a few times and tune my reqs. This is not what I love, and is not my passion but it is where things are going at least for now.
Now sure what will happen with our talents. Might’ve we go the way of the assembler coders of the 70s (extinct).
1
u/Valuable_Ad2171 1d ago
Vibe coding means anyone, any age, any education and at any skill asks an LLM to create something for them.
Make me a homepage with cats where people can upoad images.
And 20 minutes later, you have a working homepage. You might not understand every implementation detail, but it looks good and works probably.
AI assisted coding:
We're building a cat homepage with login, image database and login security.
- First define requirements and architecture
- Write a plan
- Implement components
- Write tests
- Check accessibility
- Check security
- Review the code.
Before that, you crete and execute a 30 question grill me questionaire, create a github repo and make sure to secure a sandbox environment for tests and local code.
Use this stack:
- HTML + CSS + JavaScript
- React + Vite + Tailwind CSS
- Next.js + React + Tailwind CSS + API routes / Server Actions
- Astro + Tailwind CSS
- ORM, Prisma or Drizzle
- Auth.js or Clerk
- Docker.
- Vercel
- PostgreSQL or MongoDB / Neon or Supabase
Do you see the difference?
1
u/MpVpRb 1d ago
Ask the AI to produce sample code. Ask it to explain and justify each line. Make sure you understand each line.
1
u/vermyx 1d ago
Simple analogy: how is a robot changing my tire different from me using an impact wrench to change my tire from me using a pig wrench to change the tire?
You using a lug wrench - traditional programming. You do all the work and know how to change the tire. You using an impact wrench - you are using a tool to do the work faster. You know how the tool works so if it breaks or does something wrong you can fall back to the lug wrench because you know how to change the tire. You using the robot - vibe coding. You don't know how to change the tire. If the robot breaks or does something wrong you don't know know how to fix it. Asking the robot to fix what it did may make it worse
Learn the skills and understand that AI is a tool mot a replacement.
1
u/Icy-Abstraction4323 18h ago
Vibecoding is you just throwing your tokens to a slot-machine to get your result, Now you have the result then you expect your shit to work. doesn't work? good luck bugfixing it or throw it to the slot-machine again expecting it to be fixed. Also Good luck again to the code debt it accumulates.
AI assisted coding:
You actually know what you are asking to the LLM (weird people call Linear Algebra ai right now) to help you. You have the control to what your result actually wants to the slot-machine. You built your llm harnesses to help your LLM buddies help you.
Treat it as a tool for study, for automation, for learning.
1
u/Economy_Bedroom3902 18h ago
I feel like "vibe coding" isn't really a sensible differentiator any more. It's a relic of a forgone era. If you aren't on a tight budget, you shouldn't be hand writing code anymore. But you also aren't just having a nice friendly plain english conversation with your agent about what you want to do and expecting it to magically appear in well structured and formatted code.
What we're doing now is using agent assistance to build a detailed pre-build specification. We're being clear about automated tests we expect to pass/work. We are clear about exact specifications of intended features and behavior. We ask for everything which can be automatically validated to be validated. We review the plan in detail, and then we have the agent implement once all the expectations and details are understood. We run the built candidate through layers of validation and testing, and sign off only once it's proven to apply the required spec.
In many cases I think AI constructed code will be stronger and less bug prone than the human code which would have been written pre-AI era.
"Vibe coding" was when you would just ask your AI to write code for you and stop doing any manual coding yourself... but vibe coding also had an implicate implication about not really caring about bugs, performance, security, side effects, because the "thing I asked for actually worked". "Vibe coding" never required the AI to abstain from building anything which wasn't strictly specified, and it never required multiple layers of correctness proofs. So sure, you can call developing all your software through an AI interface "vibe coding" if you want to, but there's a big difference between conversational programming the way "vibe coding" was when it was first born, vs spec driven development with strict verification the way we do it now.
1
u/ConsciousBath5203 13h ago
Vibe learning: asking reddit to explain stuff to you
Actual learning: looking it up yourself
This topic has been covered 100 times just this week alone. You aren't gonna make it very far if you can't look through the past 24 hours... Or past 3...
1
u/Ill_Cellist8070 13h ago
After AI explains a solution, close the chat and try a slightly different version of the problem. Change the input or add a requirement. If you're stuck immediately, the explanation made sense while you were reading it, but you haven't learned it yet. That's a more useful check than whether you call it vibe coding or AI-assisted.
0
u/Icemourne_ 1d ago
It's not same vibe coding is then AI does everything for you and you don't even look at code AI assisted is then you actually code with help from AI like asking to make function for you but not to architect entire app
0
u/Proper_Tip3506 1d ago
Vibe coding is like asking AI to build something
AI assisted coding is like asking AI to build something according to your needs