<html><head></head><body><div class="ydpb0acf67yahoo-style-wrap" style="font-family:Helvetica Neue, Helvetica, Arial, sans-serif;font-size:10px;"><div></div>
        <div dir="ltr" data-setdir="false">I am in favor of accepting code generated by AI in principle, as long as whoever submits the code is responsible for the contributed code.</div><div dir="ltr" data-setdir="false">Key points are:</div><div dir="ltr" data-setdir="false">- Contributed code (whether generated by AI or not) must be understood by the PR submitter;</div><div dir="ltr" data-setdir="false">- The PR submitter takes responsibility for guaranteeing that the contributed code is free of license restrictions, and therefore can be released under Biopython's license. But the same requirement holds for any code contributed to Biopython, not just AI-generated code.</div><div dir="ltr" data-setdir="false"><br></div><div dir="ltr" data-setdir="false">Best,</div><div dir="ltr" data-setdir="false">-Michiel</div></div><div id="yahoo_quoted_7722307549" class="yahoo_quoted">
            <div style="font-family:'Helvetica Neue', Helvetica, Arial, sans-serif;font-size:13px;color:#26282a;">
                
                <div>
                        On Friday, April 24, 2026 at 07:16:23 PM GMT+9, Peter Cock <p.j.a.cock@googlemail.com> wrote:
                    </div>
                    <div><br></div>
                    <div><br></div>
                
                
                <div><div dir="ltr">Dear Biopythoneers,<br></div><div dir="ltr"><br></div><div dir="ltr">We need to set out a generative AI policy for contributions to Biopython.<br></div><div dir="ltr"><br></div><div dir="ltr">There are now multiple recent PRs submitted by new contributors which<br></div><div dir="ltr">are openly using AI tools, more that I suspect are, and now even AI assisted<br></div><div dir="ltr">PRs from past contributors (where CV padding or other external metrics<br></div><div dir="ltr">are unlikely to be driving this). These are generally more work to review<br></div><div dir="ltr">than human written PRs, and that is a growing issue.<br></div><div dir="ltr"><br></div><div dir="ltr">I blogged about my views late last year - ending in the line "Right now, I<br></div><div dir="ltr">still lean very much to saying no any PR using generative AI".<br></div><div dir="ltr"><br></div><div dir="ltr"><a href="https://blastedbio.blogspot.com/2025/11/thoughts-on-generative-ai-contributions.html" target="_blank">https://blastedbio.blogspot.com/2025/11/thoughts-on-generative-ai-contributions.html</a><br></div><div dir="ltr"><br></div><div dir="ltr">Things will change (both tool capabilities, but also the social and legal<br></div><div dir="ltr">interpetations) but that post still describes my views today - note I did<br></div><div dir="ltr">not touch on the topic of communications there (see below).<br></div><div dir="ltr"><br></div><div dir="ltr">Recently Linux adopted what has been described as a balanced stance<br></div><div dir="ltr">treating it as a tool with very clear expectations that usage MUST be declared<br></div><div dir="ltr">and that the human submitter is responsible for (quoting these four points):<br></div><div dir="ltr"><br></div><div dir="ltr">* Reviewing all AI-generated code<br></div><div dir="ltr">* Ensuring compliance with licensing requirements<br></div><div dir="ltr">* Adding their own Signed-off-by tag to certify the DCO<br></div><div dir="ltr">* Taking full responsibility for the contribution<br></div><div dir="ltr"><br></div><div dir="ltr"><a href="https://docs.kernel.org/process/coding-assistants.html" target="_blank">https://docs.kernel.org/process/coding-assistants.html</a><br></div><div dir="ltr"><br></div><div dir="ltr">That is pragmatic but ignores the legal and ethical minefield. We don't<br></div><div dir="ltr">have a Developer Certificate of Origin (DCO), but I think the other<br></div><div dir="ltr">points are a bare minimum for any Biopython policy.<br></div><div dir="ltr"><br></div><div dir="ltr">Most of my personal open source projects have only had a very small<br></div><div dir="ltr">number of contributors, and I am comfortable with outright rejecting<br></div><div dir="ltr">generative AI. I know some of the past/current Biopython contributors<br></div><div dir="ltr">are more willing to embrace this technology though - so I doubt support<br></div><div dir="ltr">for a simple ban would be unanimous.<br></div><div dir="ltr"><br></div><div dir="ltr">Speaking for a moment as the current Open Bioinformatics Foundation<br></div><div dir="ltr">president, the board has discussed this and agreed not to try to micro<br></div><div dir="ltr">manage the member projects. For reference, BioPerl have started<br></div><div dir="ltr"><a href="https://github.com/bioperl/bioperl-live/issues/407" target="_blank">https://github.com/bioperl/bioperl-live/issues/407</a> which has some<br></div><div dir="ltr">excellent points and examples to consider.<br></div><div dir="ltr"><br></div><div dir="ltr">In particular, this is not just a code or documentation changes issue - but<br></div><div dir="ltr">also about the communication around any proposed change: the nature<br></div><div dir="ltr">of the commit messages, pull request description, and discussion. This<br></div><div dir="ltr">ties into the maintainers' burden - many of our recent AI generated PRs<br></div><div dir="ltr">have fairy short code changes but the verbose text is exhausting to read<br></div><div dir="ltr">and unhelpful. It has sometimes felt like I have been talking to an AI agent<br></div><div dir="ltr">rather than a human - I actually liked the feeling of mentoring a new<br></div><div dir="ltr">contributor and guiding them through minor hurdles to getting their<br></div><div dir="ltr">change accepted, but you lose that with an AI agent inbetween you.<br></div><div dir="ltr"><br></div><div dir="ltr">I therefore very much like this line from the curreth Codeberg policy:<br></div><div dir="ltr"><br></div><div dir="ltr">> All communication, that includes: commit messages, pull request<br></div><div dir="ltr">> messages, documentation, code comments and issues (and<br></div><div dir="ltr">> comments on issues/pull requests), that is intended to be read<br></div><div dir="ltr">> by people to understand your thoughts and work must not have<br></div><div dir="ltr">> been generated with AI. We exclude machine translation and<br></div><div dir="ltr">> tooling that helps with grammar and spelling check.<br></div><div dir="ltr"><br></div><div dir="ltr"><a href="https://codeberg.org/comaps/Governance/src/branch/main/AI_USAGE.md" target="_blank">https://codeberg.org/comaps/Governance/src/branch/main/AI_USAGE.md</a><br></div><div dir="ltr"><br></div><div dir="ltr">Would anyone like to speak in defence of accepting AI (assisted) PRs,<br></div><div dir="ltr">and suggest an existing policy you would be happy we adopt or base<br></div><div dir="ltr">ours on?<br></div><div dir="ltr"><br></div><div dir="ltr">Or should I start drafting a more draconian but likely much shorter one -<br></div><div dir="ltr">a few lines like this in the CONTRIBUTING file and/or PR template: No<br></div><div dir="ltr">generative AI to be used in any Biopython contributions, with the exception<br></div><div dir="ltr">of machine translation to/from English (where you might consider including<br></div><div dir="ltr">your original language text as well).<br></div><div dir="ltr"><br></div><div dir="ltr">Thank you,<br></div><div dir="ltr"><br></div><div dir="ltr">Peter<br></div></div>
            </div>
        </div></body></html>