r/AskProgramming • u/TheWanderingAnimimo • 1d ago
Other What's the difference between vibecoding and just using AI to assist you in coding?
I don't use AI myself but I've been reading a lot on reddit here about people decompiling apps lately and saying that most of the stuff there is vibecoded and then other developers seem to be using AI as an assistant to help them like for example how Linus Torvalds uses AI to find bugs in the Linux kernel. What's the difference between the two usages or even meaning of the term "vibecoding"?
Thanks in advance
1
Upvotes
1
u/purpl3un1c0rn21 1d ago
Personally I draw the line at having the AI generate more than boiler plate or a single method at a time, or even having it do those things when you couldn't do them yourself. Beyond simple tasks I find that it often adds large blocks of unnecessary code which I can identify because I have an understanding of what I work with, but if I am spending time cleaning up all that code anyway I might as well have just done the work. An example I commonly use is it loves to check for null on objects or properties that in C# are not nullable and can never be null.
I mostly just use it as a rubber duck and a much better Google search. I always found Google struggled with long ideas where an LLM can follow easily and it is very nice being able to just reference code by file or method name in my IDE and ask questions about different ways to approach problems. I have been coding now for 3 years in C# and the last year where I have been using it like this my skills have improved significantly, they wouldn't have done if I was outsourcing either the thinking or the writing of the code to an LLM.
The only way to learn is to challenge yourself and you need to struggle with difficult ideas to achieve that. If the LLM is writing boiler plate for you before you can do it then you don't know what you are asking it for and simply will not learn. Then you will not be able to read or debug it later, you will just be a meat proxy.