Live data from Hacker News

The Zig project's rationale for their anti-AI contribution policy

simonwillison.net

391–400 of 496 posts

Re: The Zig project's rationale for their anti-AI contribution policy

#391

From https://kristoff.it/blog/contributor-poker-and-ai/ : "Unfortunately the reality of LLM-based contributions has been mostly negative for us, from an increase in background noise due to worthless drive-by PRs full of hallucinations (that wouldn’t even compile, let alone pass CI), to insane 10 thousand line long first time PRs. In-between we also received plenty of PRs that looked fine on the surface, some of which…

This is a spam problem more than anything else. It's not really an AI problem except that it's AI that is enabling this new type of spam.

Imagine there's no AI, but for some reason you have people hiring armies of cheap overseas devs and using them to produce mediocre quality drive-by PRs. The effect would be the same.

AI can be used to make quality code, but that requires careful use of the tool... like any other tool. This isn't careful contributions made by someone who knows the project and its goals and is good at using the tool. This is spam.

Re: The Zig project's rationale for their anti-AI contribution policy

#392
post #386

Earlier quoted context omitted.

I'm glad you find it entertaining. Now read the actual points made by the AI with an open mind and a critical mindset, instead of dismissing them because they were not written by a human being. The point I'm making is that this policy is so stupid that even an LLM can easily figure out the logical flaws. Perhaps an LLM could have also helped you figure out the point of my original comment.

I red it and its terrible nonsense.

It seems pretty solid to me. Where is the nonsense?

Re: The Zig project's rationale for their anti-AI contribution policy

#393
post #374
post #324

Earlier quoted context omitted.

> Hooks (although there's no clean way to enforce they be "installed" on a clone), GHA Workflows (or their equivalents on other forges). Git supports pre-receive hooks. But big multitenant forges like GitHub.com don't allow you to configure them because they're difficult to secure well. (Some of their commercial features are likely based on them, though.) If you self-host a forge, though, you can configure arbitrary…

You're still talking about compute resources that need to be paid for and maintained for that. Spamming AI PR's is going to cost a lot of money.

At the end of the day, LLM slop PR spammers are essentially adversarial actors. Git hooks are ultimately a tool for good faith developers within a given community (your team, your company, your regular contributors) in maintaining good hygiene and avoiding lapses into preventable mistakes. That's true for all CI, too.

And the truth is, too, that it's super easy for an LLM agent to run a build and tests. Good faith contributors using LLMs will never open PRs that don't build not because they're willing to "go the extra mile" and do manual work, but because they give the slightest fuck and have any respect or consideration for the humans they're working with.

LLM spam presents a different problem than any of that stuff was meant to solve. It's a malicious act, and you're right that tooling that burns the defender's compute can't be a solution. :-\

Re: The Zig project's rationale for their anti-AI contribution policy

#394
post #390

Earlier quoted context omitted.

What is the actual problem with the lack of determinism? Why is auto-completion a problem if it's done with AI?

it's in the definition of the word. you can not determine what the LLM will do. anything done with AI is a problem because it is essentially unpredictable. auto-complete is on the fence because you presumably are still able to pay attention that it completes what you want but it depends on how diligent you are when working and how much i trust your diligence.

You are still dodging the question -- what is the problem with not being able to determine in advance what the LLM will do?

Even then, you can clearly see that the LLM will try its best to follow the instructions. The result might not be 100% predictable, but it is somewhat predictable depending on the task.

After the LLM does what it has been asked, you can review it, iterate on it, test it, and so on. And if you're trying to make anything worthwhile, you will do so.

Lack of determinism is not a practical concern.

Re: The Zig project's rationale for their anti-AI contribution policy

#395
post #391

From https://kristoff.it/blog/contributor-poker-and-ai/ : "Unfortunately the reality of LLM-based contributions has been mostly negative for us, from an increase in background noise due to worthless drive-by PRs full of hallucinations (that wouldn’t even compile, let alone pass CI), to insane 10 thousand line long first time PRs. In-between we also received plenty of PRs that looked fine on the surface, some of which…

This is a spam problem more than anything else. It's not really an AI problem except that it's AI that is enabling this new type of spam. Imagine there's no AI, but for some reason you have people hiring armies of cheap overseas devs and using them to produce mediocre quality drive-by PRs. The effect would be the same. AI can be used to make quality code, but that requires careful use of the tool... like any other to…

Exactly, people could have "consulted Google" or "consulted stack overflow" and had the same issues. It's about the end result, not how the code got to that end result, and the submitter is responsible to make sure of the quality of the submission regardless of whether AI was used or not.

To reject submissions where the dev "consulted ai" is like rejecting iron ore that was mined by a machine rather than a human. The quality of the ore is what should be measured, not how it was obtained.

Re: The Zig project's rationale for their anti-AI contribution policy

#396

Earlier quoted context omitted.

Why review thousands of lines of LLM generated code from some random person you don’t know when you could use an LLM yourself to do the same thing, except with probably a better design and more thoughtful approach? Maintainers should get to spend their time developing stuff, not just reviewing low effort PRs. The flood of LLM code is changing the balance for the worse for maintainers, and I can totally see why they’d…

but that doesn't have anything to do with LLMs. if someone made the same gigantic mess of a PR without LLMs, it would still be rejected, because it is a gigantic mess of a PR. the low effort part is the problem. what if i made a great, focused, readable PR but had claude write it out? what if i carefully checked and deliberated each line, just as if i had written it myself? granted, in the real world, 99.9% of slop P…

It’s the lack of friction that LLMs bring. It’s easy to put in a couple of lines and generate 1000’s of lines of code. Whereas the person would never have done that without LLMs.

I think LLM dev needs to take a better spec driven approach. The vibing is getting to be annoying.

Re: The Zig project's rationale for their anti-AI contribution policy

#397
post #199

Earlier quoted context omitted.

So - in that way - LLM will be Your mentor, it will shape Your way of thinking according to algorithms and datasets stuffed into by corporate creators. Do You really want it? There is also a second face of that: people are lazy. They wouldn't develop their own skills but rather they would off-load tasks to LLM-s, so their communicative abilities will be fade away. That's looks like a strong dystopia for me.

> LLM will be Your mentor, it will shape Your way of thinking according to algorithms and datasets stuffed into by corporate creators. How is this mutually exclusive with teaching better than most humans? Part of these "corporate" datasets include deep knowledge of the world's best literature and philosophy, for instance. Why can't it be both? > Do You really want it? If I'm in a hurry, don't know where to start, or…

> Part of these "corporate" datasets include deep knowledge of the world's best literature and philosophy

Part of those datasets also include 4chan.

Re: The Zig project's rationale for their anti-AI contribution policy

#398
post #304
post #121

Earlier quoted context omitted.

It seems to me that people might be arguing from conflicting hidden premises here. "AI Coding" is a spectrum that could mean something as simple as letting the LLM proofread your changes and then act on those with your own human brain, or it could mean just telling the agent what you want and let it rip and tear until it is done. If I do the latter and submit a PR to something like Zig, I'll be certainly caught doing…

Blanket banning all of these seems like a bad idea to me. It actively gates people like myself from contributing in my projects i will reject any contribution that i do not understand. even if the contribution is handwritten by an expert developer. that developer will have to earn my trust like anyone else, like you would have too. LLM contributions are non-deterministic, which means they can never be trusted. theref…

> i will reject any contribution that i do not understand

Fair.

> that developer will have to earn my trust like anyone else

What does it take to "earn your trust"?

> LLM contributions are non-deterministic, which means they can never be trusted.

Provably incorrect. LLM contributions can be reviewed, tested, and understood like any other contribution. There's nothing "special" about LLM contributions.

Contributions authored by human brains are also non-deterministic, perhaps if the author was feeling in a slightly different way they'd have formatted the code a bit differently.

> therefore, if you use LLM to contribute, you can not earn my trust.

The premise is wrong.

> if you believe that you can not create a meaningful contribution without the use of LLM then you are realizing that you are not skilled enough to understand the code that you contribute

What if I believe I can do so without an LLM, but that it could be even better with an LLM?

What if I'm great at understanding code, but terrible at writing it?

Again, this is a premise that you just decided to take as truth, without proof.

> because if you could understand it, then you could write it yourself.

False. I can understand a novel algorithm by reading and studying it, but perhaps I could have not come up with it myself.

> i want you to earn my trust by showing me that you understand what you are doing

I can easily do that even if my contribution involves LLM assistance.

> i want you to grow your understanding of my project

Ditto.

> none of this happens when you use LLMs

False. Why do you think so?

> if you are unable to make a contribution without the help of an LLM then you are not ready to contribute.

Again, this is your opinion and you have no way of proving it. I can prove the opposite.

Re: The Zig project's rationale for their anti-AI contribution policy

#399
post #385

Earlier quoted context omitted.

You could extend that argument to any tool used by the developer, like a linter, sanitizer, the IDE itself, or even auto-completion. Why target LLMs specifically? The more I think about it, the more nonsensical it is. - What if I do everything by hand, but have an LLM review my work at the very end? - What if I have an LLM guide me through the codebase just by specifying the files I should read and in what order, but…

Zig devs don't find LLMs to be net positive, what is so hard to understand? You can write your own compiler with LLM yourself, nobody is standing in your way.

I understand that, I don't agree with the reasoning and I think it's illogical. Why am I not allowed to comment on it?

Re: The Zig project's rationale for their anti-AI contribution policy

#400

We have been running LLM and coding agents for a while now and my overall observation is that it is a powertool or a crane, it is not a decision making tool. Now in my org, people who have great understanding of concepts, deeper engineering understand have exponential productivity. People who dont or new in the workforce, juniors, are generating hell-ish code without understand as long as it runs they think the job i…

I agree with this assessment but even among us seniors with accumulated knowledge it has the dangerous potential of getting out from under your feet and produce large amounts of code that you don't have full comprehension of.

I can generally make it produce excellent well-tested code. Far better than I could do in the same time on my own. But it's a challenge to keep on top of knowledge about everything it made.

Post reply on HN