One of the open source projects I used to (many years ago, so I am not really affected anymore) has recently decided to allow AI contributions. One of their arguments is that they judge submissions on quality, not tools used.
Back when I was an active contributor (to the project and maintainer of some other parts of the surrounding ecosystem), I got a lot of submissions that were bad.
The thing is, I absolutely loved getting these because they always came from super-enthusiastic junior people. Reviewing them and giving feedback often too much longer than implementing the feature myself. The same was usually true for the next contribution too. But that shifted over time. After a few months, I started getting patches where I didn’t find anything beyond the cosmetic that I wanted to change.
Going back further, I was one of those people when I started contributing.
Measured as code contributions over the short term, maintainers working with submitters of poor-quality PRs is a waste of time. You’re taking time away from writing code to do something that produces code more slowly.
Measured over the long term, the results are very different. Far more code in that project and closely related parts of the ecosystem has been written by people who I mentored when they came along with some bad code than by me.
It’s never a waste of my time to turn an enthusiastic and incompetent contributor into an enthusiastic and competent contributor, it’s an absolutely critical part of building a healthy project. I wouldn’t have got nearly as much out of F/OSS on a personal level if I hadn’t encountered a lot of people with the same opinion when I was one of the enthusiastic and incompetent newcomers.
But LLMs are not like that. If I spend time reviewing LLM-generated code when it would have been faster to write it myself (which, to be clear, is the case on 100% of LLM-submitted PRs I’ve seen so far), then that’s just a time sink. It’s also taking away time I could be spending helping new contributors who want to actually improve, rather than just take the review comments, feed them into an opaque system, and give me back the results.
