Conversation
|
My main concern with this is we may come off as non contributor-friendly; our tech stack is not dev friendly to begin with (imo). I have seen a lot of pro-AI vs anti-AI discourse, and I don't want us to sound like we're banning AI because it's cool. I think if we do have to put our foot down, it should be backed by a strong technical or philosophical justification. I don't fully agree with the comparison against our wikis and communities - our writing sites are ultimately outlets for (human) creative expression, and thus must uphold that standard. Wikijump, at the end of the day, is just a piece of software infrastructure - I don't feel like it holds the same weight. I'm very much in the "I don't want AI to replace my software job" and "programming is my passion" camp, but I also don't agree with holding software development to a purist degree. Of course, that doesn't mean we should accept walls of slop with no human thought behind it, but if someone can leverage LLMs to push over the finish line, I am open to allowing it, to a degree where we don't compromise the performance or security of the project, and we don't waste additional reviewing effort on clearly LLM-generated code. Zig/Linux/etc are meant for critical infrastructure and thus can set the bar high; not saying that we can't, but idk if doing so at the cost of driving away potential contributors is a fair trade. Ultimately, it depends on what our priorities are for this project. I'm fairly new on this so I also want to hear what other folks think. |
|
My opinion is that you can use AI to assist your coding, but not replace it. We can ask AI about some tricky questions, or use tab-completion in IDEs, but we can't just let AI do everything. In short, if most of the work is done by humans, that's acceptable. |
|
I agree with the general spirit of the previous comments. I don't think banning it completely is the best solution. Personally, I've gotten into the habit of using it for reviews before my pull requests, for example. For me AI should save developers time (for understanding a subject or for the correction) but in NO CASE should it decide the logic of the implementations alone. Perhaps making it more restrictive than intended could also be an idea to prevent people from going completely AI-powered; I don't know :/ |
|
I think the main thing is mutual respect between potential contributors and maintainers. It's easy to use LLMs to generate large amounts of code changes, which places great burden on reviewers, often disproportionate to the level of effort the prompter had put in, therefore unfair and disrespectful to the reviewers as we do not employ AI mass reviewing tools. On the other hand, if most of the code changes are hand written and only minorly assisted by LLMs, then the work by each side are more balanced, and people would be more accepting of such cases as respect is shown by the effort one has put in. |
|
I think that may refer to my PR here: I meant to contribute only after reducing that mess into small, reproducible issues, not after dumping tens of thousands of lines upstream. Once I saw that the agent had gone ahead and opened the PR there, I had the agent close it as well. That is the part I would want the rule to focus on: the PR author has to read, understand, and stand behind the contribution before asking maintainers to spend time on it. I have already seen what happens when professionals file AI-generated work without checking it, including at least one case in the legal profession: With that risk in mind, I like the balance in the Lean community's policy: It focuses on whether the contributor understands the submitted work and can explain it, rather than on whether AI was used at all. The current wording is hard to reconcile with the EN site rules, which explicitly allow "AI-generated CSS code". |
There was a problem hiding this comment.
I also reviewed the PR regarding the no-use of AI policy.
Though I don’t think strictly refusing AI nowadays is the right thing to do. What I would suggest instead is requiring its use to be mentioned, and allowing trusted contributors who have already worked on the repository without AI to use it.
I think a proper understanding of both the codebase and Wikijump’s full architecture and way of working is required, and I don’t think AI can fully understand all of that by itself. Because of that, it would probably be quite easy to notice when someone relies on it without actually understanding what they are doing.
I don’t personally use AI, but I know that a lot of developers nowadays do. AI is a bad tool when used by someone with no real coding knowledge or experience, but when used properly, it can help speed up Wikijump’s development.
This is a policy we have previously discussed in chat, but with the recent creation of a (declined) large-scale LLM-assisted PR, it is time we formalize this
Please comment on the wording of the policy, as well as the justification / philosophy writing in
docs/ai.md. Does this document cover everything that needs mentioning? Are there any philosophical ideas that project contributors disagree with?These documents were inspired by Zig's anti-AI policy: