Hacker News new | ask | show | jobs
by withinboredom 482 days ago
I don’t see anyone “gatekeeping” but I do see warnings. I don’t know what you’re good at, to give a good example. But if you have a hobby or job, imagine the new guy coming in, knowing absolutely nothing and doing shit they technically can do, but shouldn’t be done. That’s what this is. Just like a new cashier can technically just not give correct change, everyone knows this will end badly; eventually, even though everything looks fine from the outside.

That’s what AI code tends to do. It looks fine to the outsiders, it might even function correctly MOST of the time. Programmers are trained, mostly through experience but also classically, to think through every exceptional case and figure out how to handle it (or return an error so a human can handle it).

That isn’t to say this is ALWAYS the case with AI code, but rather it TENDS to be the case. YMMV, which is where these warnings are coming from.

7 comments

> Programmers are trained, mostly through experience but also classically, to think through every exceptional case and figure out how to handle it (or return an error so a human can handle it).

Unfortunately, vibe coding is seen as acceptable to many specifically because what you say here hasn't been the norm for like 15 years now.

The rise of bootcamps, dependency-driven-development, and "move fast and break things" culture convinced a whole generation of programmers that all that matters is the happy path, and even then, only within the context of today's specific task. The ocean of garbage they produced during that time is both one of the reasons why LLM's can produce code in the first place and one of the reasons why that code is so consistently and irrecoverably poor by traditional standards. Aspiring vibe coders see their peers earning absurd six-figure salaries to produce the exact same sort of unstable, short-sighted noise that they see their LLM literally reproduce for pennies now.

In many ways, we should be gatekeeping by asserting a higher standard of foresight and quality for redistributed code, but we completely lost that battle many, many years ago already.

> It looks fine to the outsiders, it might even function correctly MOST of the time.

Most code (even written by good programmers) rarely functions correctly most of the time. Most code is broken. This is not the problem with AI. Unless I am using the tools wrong, LLMs can generate fully functioning scripts (and some of them are good) but they break after the 50k token context and start doing insane things that not even juniors will do (like randomly removing code).

If you want to see a shit-show, go to Bolt Discord channel. Some users are able to get a very simple and rough kinda single script app running. Everything else breaks once they start making simple amendments. This is not fixed by Claude 3.7 or O1 Pro or whatever. This is a fundamental issue in all of the LLM and a local maxima of the current tech.

Not that the current tech is not amazing. It is and there is a lot of value to be extracted from it. But everyone and his investor think they are about to reach nirvana and want to replace everything with "AI" where "AI" is a 100k context LLM.

I feel comfortable calling a lot of the comments gatekeeping "adjacent".

When a post is a "warning" about user's credit cards etc. and it was in none of the "vibe coding" examples, that feels like someone deflecting (but with a gate keeping mindset).

As others have said here, I too have knocked out little apps and sites vibin'. At first (1) it was to see if what everyone was saying about LLMs was true. Then (2) I wanted to see if LLMs could help in languages I was not familiar with. Then, even for languages I knew well enough, I (3) wanted to see an LLM's code to get the modern method of modularization for the language (JavaScript is one that has gone through phases). Finally I came to trust the machine and (4) have vibed code just for my own small projects.

Because people who admit they don't understand coding should not be coding with important data. And it's very easy for you app to suddenly have important data. Do you have auth? You have PII.

Gatekeeping is restricting access to the trade with arbitrary precedence, like "real coders use emacs." It's not expecting safety. If someone wants to build a bridge out of cotton the city won't let them. That isn't what most people consider gatekeeping.

What's stopping said people from grafting together a few Stack Overflow answers today?
Grafting together stack overflow answers requires knowledge of how your chosen programming language and execution environment work. There is at least some floor of knowledge required to synthesize those answers into a working solution.

Vibe coders as described in the OP can just copy/paste exactly what the LLM spits out with much less knowledge. It’s not the same thing at all IMO.

I don't see a major difference in a 20% working knowledge of a language vs 0% if the output works. Neither are writing provably correct code, and that's often fine! Many of the engineers at my company (not a software company) write terrible terrible code using the Stack Overflow method, but our manufacturing line still runs.
20% knowledge could be enough to fix errors yourself. E.g. this function name has a typo, or this calculation looks wrong, or this code has been repeated verbatim 40 times, maybe it should be a function, or why did the LLM change this totally unrelated area of the code?

If you only take exactly what the LLM spits out you can only verify by running. If it is broken in edge cases you can only prompt the LLM to fix. You then have to run the code again to verify the fix, and with zero understanding it may have broken some other edge case (LLMs do this all the time especially overly eager reasoning models).

What you said applies to programmers who are actually good.

Consider that the world is full of programmers who are objectively shit (I live in India, and have personal experience). The only difference is that they’ll be copy pasting from ChatGPT instead of StackOverflow, and honestly I’d rather have ChatGPT.

So this is about the ego of professionals? As the other person explained, there are many use cases for disposable software, so it's a good thing that there's a new tech enabling non-programmer to create these on their own.
I never said there wasn’t a use case for disposable software. I only said I didn’t see gatekeeping here. Nobody is saying “don’t do it”. They are saying “be careful”.
We should also consider experts doing things that they know they shouldn't.
> if you have a hobby or job, imagine the new guy coming in, knowing absolutely nothing and doing shit they technically can do, but shouldn’t be done

Isn't that the definition of gatekeeping? and even so, who cares? the new guy coming in creating/doing something in a way that "shouldn't be done" will eventually fail and notice the shortcomings of what they did. Then they will either drop their project or learn the way "it should be done" (like we all did, except now with AI).

I kinda feel like this attitude, like “free market capitalism”, allows more bad things to happen with the potential for some unseen/immeasurable force to “correct” the environment once the Bad Thing is recognized and rationally dealt with. But there are probably better ways to avoid Bad Things that require only a little additional forethought, planning, and deciding ahead of time what sorts of things we’d like to avoid (oh no, regulation!).
Do we care? Is the podcast script timer from the article a Bad Thing? Are people actually hiring vibe coders for critical infrastructure?

I write really bad Haskell code sometimes without any AI assistance. Am I doing a Bad Thing when I create my own tools?

What are you intending to regulate here?

> Are people actually hiring vibe coders for critical infrastructure?

It appears to be happening right now in the US federal government.

To be clear, you're saying that people with no ability to reason about code are currently in a position to push unreviewed code into critical government infrastructure?

Do you have an example?

No. I never said you shouldn’t use it. I never even said it was a bad idea. But I did say to be careful. Find out if your cashier is giving the right change when you hire them, before you have the cops showing up to accuse your business of theft.