Live data from Hacker News

I won't be vibe coding anymore: a noob's perspective

varunraghu.com

41–50 of 158 posts

Re: I won't be vibe coding anymore: a noob's perspective

#41
"Vibe Coding" is just simply not sustainable. I've yet to see any tool that can make edit after edit after edit to the core code base without making mistakes unless a developer is watching carefully.

LLMs are amazing tools and I do use them for writing code, refactoring code, etc. but I would never prompt engineer only. My use of LLMs often is a mix of jumping between Aider and writing code myself when Aider doesn't doesn't understand what I want, or what I want is a big refactor, which LLMs are not good at because it's too easy for them to make mistakes when writing huge blocks of code, like syntax errors and the like.

For a human moving a function or even indenting a block (to wrap in an if/try/catch/etc) is child's play. To an LLM? Yeah, it can easily make stupid mistakes (linting aside, I'm talking syntax errors) when doing that. Also, what a waste. We really should have MCP-type tools of "Wrap the code on lines X-Y" in a try/catch, since the logic for that is stupid-easy but for an LLM the only way to accomplish it is a massive Find/Replace block. The bigger the block of code that the LLM writes in 1-shot, the higher the chance it messes stuff up (or at least that's my experience).

I expect this situation to improve over time as as more coding assistant tools learn how to use things like linting, running a test build, running tests, etc. And yes, I know some already do that, I've just not been super impressed with their ability to do that so far. Despite clear instructions I've had both Claude Code and Aider run the wrong `npm run test:xxxx` command (the watch command instead of the ci version) and I then I have intervene. Even when they run the right command, it's still to easy for an LLM to get off in the weeds or far down a path you don't want.

The trick with LLMs is "commit often", I don't code that way myself, I'm more of a "one commit a the end"-type of guy (yes, I know you can squash) but I've changed that with LLMs since it gives you "save" points when the LLM goes off track. Often a bad/failed edit can completely derail the progress and a human _must_ intervene, reset to the last good state, and start over again. If you aren't committing regularly (after every couple exchanges or so) then you can have a mess on your hands:

Commit - Feature - Feature - Feature - Disaster

If you do this you have to pick apart the disaster by hand or give up on the 3 features/bug fixes, improvements, etc since your last commit.

Aider does a very nice job of this by default. I was opposed it when I first started using it but it's invaluable.

While I enjoy learning about coding, coding is not about the journey for me, it's about about the destination. And I gladly use Aider to pump out UI that would take me hours if I was capable of doing it at all, so that I can keep moving towards my destination. BUT, if you don't understand the code that's being written then you've already lost. I understand grid/flexbox but I'm just very slow at it. LLMs can pump out a UI (or 5-10 iterations of a UI) in practically no time at all, I can edit styles, I'm just slow at writing them from scratch. This is where LLMs shine IMHO, trying out things that would take longer or not have the ROI to do yourself.

"Hey our settings screen is a little cluttered, can we clean it up?" has a _very_ different answer if you can test 5 iterations and pick the best one in <1hr vs spending 2-3+ hours doing it from scratch. The amount of UI I have written has skyrocketed since LLMs came out. And, not unlike Electron, the options were not "LLM UI" or "Bad UI", the options before this were often "LLM UI" or "No UI" (CLI or developer-only focused UI pages).

Re: I won't be vibe coding anymore: a noob's perspective

#42
post #5

"that’s when it struck me. coding isn’t about the finished product. its a lot like writing. its about the process. its about how you approach a problem. its critical thinking." From a business perspective, they don't care about this. They just want it built as inexpensively as possible in a reasonable time frame. Vibe coding is here to stay.

> Vibe coding is here to stay.

I would say this is true in the same way that copy-paste coding functioned and that vibe coding isn't fundamentally different. It can be a useful approach to a variety of problems.

Having capable, knowledgable, and skilled employees is important to businesses though. If your business is something easily approachable then you are at risk of being outcompeted from companies with more skilled employees. There are truly hellscapes of codebases out there without the glimmer of hope of being worked on with vibe coding alone. On top of that, I'm getting the feeling that vibe coding is a sure way to hellscape your own codebase. Nothing can take the place of critical thinking.

Re: I won't be vibe coding anymore: a noob's perspective

#43

One problem I have is that AI is writing code I don't understand completely, yet I'm still responsible for it. Vibe coding seems like an echo from the future.

This has been the majority of my professional coding experience since the 90's ::shrug::. Having to take ownership of some Java Spring application felt a lot like stepping through an assembly program or some random ROM. Each line of code just returns values and modifies a bunch of other stuff at the same time and you slowly build up a mental model of what it's doing and what it's trying to do!

Re: I won't be vibe coding anymore: a noob's perspective

#44
post #24

What is vibe coding anyway? A new and improved version of old RAD (rapid application development)? Can we apply something from the decades of debate regarding RAD to the new undefined thing? I don't know, someone told me undefined values are hard to deal with.

https://youtu.be/IACHfKmZMr8?si=kiTOU7NpoQEwC6kj&t=45

Can you use text in clear prose, please?

Re: I won't be vibe coding anymore: a noob's perspective

#45

Earlier quoted context omitted.

Vibe coding is a death trap for juniors just starting out, as it kills critical thinking and understanding what a computer is. And a guaranteed paycheck for people with the experience to clean up the resulting messes. I hope...

Coding will not be done by juniors anymore. We are quickly progressing to humans no longer needing to learn machine langauage (syntax) and computers better developing code by interpreting human languages (english). Teams will be led by one subject matter expert, and fulfilled by thousands of agents. I would not be advising anyone under 21 to become a "coder". Studying computer sceince still has value, but coding was…

[dead]

Re: I won't be vibe coding anymore: a noob's perspective

#46

Earlier quoted context omitted.

Vibe coding is a death trap for juniors just starting out, as it kills critical thinking and understanding what a computer is. And a guaranteed paycheck for people with the experience to clean up the resulting messes. I hope...

Coding will not be done by juniors anymore. We are quickly progressing to humans no longer needing to learn machine langauage (syntax) and computers better developing code by interpreting human languages (english). Teams will be led by one subject matter expert, and fulfilled by thousands of agents. I would not be advising anyone under 21 to become a "coder". Studying computer sceince still has value, but coding was…

Same promise all the no-code or low-code app builders claim. Anyone who has done a serious project with LLM help knows it is no where near able to do half the things needed to run a project.

Re: I won't be vibe coding anymore: a noob's perspective

#47
Ofcourse, you will be. Remember how people said I will not be using smart phone? Yeah they do use smart phone now. Actually, it is not your choice. Where I work, it is a mandate to use coding assistant. Just like how people were asked to use spreadsheet software instead of good old calculators and ledger books.

Re: I won't be vibe coding anymore: a noob's perspective

#48

One problem I have is that AI is writing code I don't understand completely, yet I'm still responsible for it. Vibe coding seems like an echo from the future.

The way I approach is, I try to design or solve the issue first to the best of my ability, then I let the LLM give me its solution. Compare and take whatever is useful. I know this is not the most effective way, but it's the way I feel like I'm still thinking and not becoming super dependent.

Re: I won't be vibe coding anymore: a noob's perspective

#49
post #5

"that’s when it struck me. coding isn’t about the finished product. its a lot like writing. its about the process. its about how you approach a problem. its critical thinking." From a business perspective, they don't care about this. They just want it built as inexpensively as possible in a reasonable time frame. Vibe coding is here to stay.

Software isn't just built. It has to be maintained over time.

A long, unplanned outage is much more destructive to a brand than a delayed release. Vibe coding prioritizes the latter at the expense of the former.

Re: I won't be vibe coding anymore: a noob's perspective

#50
post #17

To each their own, of course. But > what was the point of it all if i didn’t learn a thing? Money. Freedom. Supporting a family. Doing things faster. Keeping up with changing times. etc.. There are a ton of different answers, and it depends on your goals. > coding isn’t about the finished product Again, to each their own.

How much did you get paid for this comment? And if not, why was it worth writing?

OP didn't say money is the only reason things are worth doing, he said that things can be worth doing solely for money. There's a big difference between the two.
Post reply on HN