<!-- mobian-agent-page publisher="dailydev" canonical="https://daily.dev/posts/dhh-says-ban-ai-contributions-you-re-a-guild-protectionist-he-s-not-entirely-wrong-but-he-s-not-e-kmhvbugvv" -->

---
title: DHH says ban AI contributions, you&#x27;re a guild...
description: A debate is escalating between open source maintainers and DHH over AI-generated pull requests. Maintainer Miguel Grinberg introduced a strict &#x27;discuss first&#x27;...
canonical: https://daily.dev/posts/dhh-says-ban-ai-contributions-you-re-a-guild-protectionist-he-s-not-entirely-wrong-but-he-s-not-e-kmhvbugvv
twitter:card: summary_large_image
twitter:site: @dailydotdev
og:type: website
og:site_name: daily.dev
og:title: DHH says ban AI contributions, you&#x27;re a guild protectionist. He&#x27;s not entirely wrong, but he&#x27;s not entirely right either. | daily.dev
og:description: A debate is escalating between open source maintainers and DHH over AI-generated pull requests. Maintainer Miguel Grinberg introduced a strict &#x27;discuss first&#x27;...
og:url: https://daily.dev/posts/dhh-says-ban-ai-contributions-you-re-a-guild-protectionist-he-s-not-entirely-wrong-but-he-s-not-e-kmhvbugvv
og:image: https://api.daily.dev/og/posts/kMHvBUgVv.png
og:image:alt: DHH says ban AI contributions, you&#x27;re a guild protectionist. He&#x27;s not entirely wrong, but he&#x27;s not entirely right either.
og:image:width: 1200
og:image:height: 630
og:locale: en
---

> ## Documentation Index
> Fetch the complete documentation index at: https://daily.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# DHH says ban AI contributions, you're a guild protectionist. He's not entirely wrong, but he's not entirely right either.

**[Trends](https://daily.dev/sources/trends)** · 4 min read · 10 upvotes · 6 comments

## Summary

A debate is escalating between open source maintainers and DHH over AI-generated pull requests. Maintainer Miguel Grinberg introduced a strict 'discuss first' policy after being overwhelmed by low-effort LLM-generated PRs. DHH countered that banning AI contributions is guild protectionism that betrays open source's inclusive ideals. A video rebuttal highlights that projects like Zig and NetBSD have specific, defensible reasons for their no-LLM policies — educational mission and licensing ambiguity respectively — that DHH's broad framing ignores. Mitchell Hashimoto's 'Vouch' system is presented as a middle ground. The core tensions are around PR quality, contributor identity and skill commoditization, and accountability for AI-generated code. The costs of the AI PR flood fall disproportionately on unpaid maintainers, not on those arguing for open access.

## Content

## The fight over AI pull requests is getting personal

Miguel Grinberg has had enough. The veteran open source maintainer recently updated his contribution guidelines with a blunt new rule: open an issue first, or your PR gets closed on sight. No discussion, no review, no second chances. The trigger? A flood of LLM-generated pull requests from people who clearly never looked at his code, let alone understood it.

His framing is sharp: he refuses to become a "reverse centaur" — a human puppeteered by machines, spending his unpaid volunteer hours reviewing code that an AI generated and a human barely glanced at before hitting submit. That's not collaboration. That's outsourcing your homework and making someone else grade it.

Then DHH walked into the room.

## DHH's take: this is guild protectionism

David Heinemeier Hansson published a counter-argument that's hard to ignore, even if you disagree with it. His position: open source projects that ban AI-assisted contributions are betraying the founding ideals of the movement. Open source was supposed to be universal — anyone with a computer and the will to contribute could participate. Erecting barriers against AI-aided work, he argues, is just the established programmer class pulling up the ladder behind them. Guild protectionism dressed up as quality control.

It's a genuinely interesting argument. And it's also the kind of argument that's easier to make when you're not the one doing the reviewing.

## The rebuttal: context matters

A detailed video response to DHH digs into the specifics that his framing glosses over. Two examples stand out.

Zig's no-LLM policy isn't about keeping outsiders out — it's about the project's explicit educational mission. The whole point is that contributors learn by doing the hard work themselves. An AI-generated patch defeats that purpose structurally, regardless of whether the code compiles.

NetBSD's concerns are different: licensing. AI-generated code carries genuine legal ambiguity around copyright and provenance that a project with NetBSD's history and user base can't just wave away.

These aren't the same as a maintainer being grumpy about new tools. They're specific, defensible positions that DHH's broad "gatekeeping" framing doesn't really engage with.

The video also highlights Mitchell Hashimoto's "Vouch" system as a more interesting middle ground — a way to filter low-quality AI PRs without banning AI assistance outright. The idea is that someone with standing in the community vouches for a contribution, which puts a human back in the accountability chain without requiring a blanket prohibition.

## What's actually being argued about

There are at least three separate fights happening under the same hashtag, and conflating them is making everyone talk past each other.

First: **quality**. AI-generated PRs are often low-effort, wrong, or both. Maintainers dealing with this at volume have a real problem that "just review it" doesn't solve.

Second: **identity**. The video author is honest about this in a way DHH isn't — there's something genuinely unsettling about watching a skill you spent years building get commoditized in real time. That's not irrational. It's human.

Third: **accountability**. When something goes wrong with an AI-generated patch, who owns it? The person who ran the prompt? The model? The maintainer who merged it? Nobody has a clean answer.

DHH's democratization argument is strongest on the first fight and mostly silent on the second and third.

## Where this lands

Grinberg's "discuss first" rule is probably the most practical response available to an individual maintainer right now. It doesn't ban AI. It just requires a human to show up and have a conversation before code gets submitted — which is, arguably, what good contribution practice looked like before any of this started.

The deeper question — whether open source as a culture survives a world where the marginal cost of generating a PR approaches zero — doesn't have an answer yet. But the fact that maintainers are burning out on review queues while DHH writes blog posts about democratization suggests the costs and benefits aren't landing on the same people.

## Community discussion

Top comments from developers on daily.dev.

**@amizzo** · 2 upvotes

> I like the take to let AI in for open source - it's correct and coherent with its principles - but who the fuck is "DHH"? You need to give actual names (or at minimum, a citation behind why we're left with just someone's initials). Had to Google.

**@asmundur** · 2 upvotes

> I'm not ant-AI, but the guild protectionist comparison from DHH is way off, as accepting AI submission to a codebase you're responsible means you either committing to reviewing that code, or trusting it blindly. One is bad software maintenance practice, the other is committing to an endless evergrowing list of low effort submission, all of which is unpaid work.
>
> Build whatever you want with AI. Open source it if you want. But contributing upstream is not a right, it is a relationship with the project. If you are not bringing understanding, care, testing, and responsibility, then you are not...

**@l9521787** · 0 upvotes

> I mean how is that critique anyways guild restrictions were a good thing.
>
> While of course imperfect they assured quality as a precursor to protected titles (like Doctors) today. Gatekeeping isn't inherently bad. it depends on the nature of the gates.
>
> I don't want some ambitious guy to just operate on me, nor do i wan't their code in critical systems.
>
> Most AI policies aren't an outright ban anyways and just hold the contributor accountable for their generated code.

**@zx8086** · 0 upvotes

> DHH, aka Rails Jesus, is always controversial., why else read his blog if the take isn't out of the norm.

---

Tags: [#open-source](https://daily.dev/tags/open-source), [#code-review](https://daily.dev/tags/code-review), [#ai-assisted-development](https://daily.dev/tags/ai-assisted-development)

[View this post on daily.dev](https://daily.dev/posts/dhh-says-ban-ai-contributions-you-re-a-guild-protectionist-he-s-not-entirely-wrong-but-he-s-not-e-kmhvbugvv)

```json
{"@context":"https://schema.org","@graph":[{"@type":"Organization","@id":"https://daily.dev/#organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180},"sameAs":["https://twitter.com/dailydotdev","https://github.com/dailydotdev","https://www.linkedin.com/company/daily-dev-ltd"]},{"@type":"WebSite","@id":"https://daily.dev/#website","url":"https://daily.dev","name":"daily.dev","publisher":{"@id":"https://daily.dev/#organization"},"potentialAction":{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https://daily.dev/search?q={search_term_string}"},"query-input":"required name=search_term_string"}}]}
{"@context":"https://schema.org","@type":"TechArticle","headline":"DHH says ban AI contributions, you're a guild protectionist. He's not entirely wrong, but he's not entirely right either.","url":"https://daily.dev/posts/dhh-says-ban-ai-contributions-you-re-a-guild-protectionist-he-s-not-entirely-wrong-but-he-s-not-e-kmhvbugvv","mainEntityOfPage":{"@type":"WebPage","@id":"https://daily.dev/posts/dhh-says-ban-ai-contributions-you-re-a-guild-protectionist-he-s-not-entirely-wrong-but-he-s-not-e-kmhvbugvv"},"datePublished":"2026-06-05T13:15:46.243Z","dateModified":"2026-06-15T07:48:28.290Z","description":"A debate is escalating between open source maintainers and DHH over AI-generated pull requests. Maintainer Miguel Grinberg introduced a strict 'discuss first'...","isAccessibleForFree":true,"articleSection":"Trends","inLanguage":"en","publisher":{"@type":"Organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180}},"author":{"@type":"Organization","name":"Trends","logo":"https://media.daily.dev/image/upload/s--ZfSp3asX--/f_auto,q_auto/v1780996004/logos/trends?_a=BAMAMiWQ0","url":"https://daily.dev/sources/trends"},"commentCount":6,"discussionUrl":"https://daily.dev/posts/dhh-says-ban-ai-contributions-you-re-a-guild-protectionist-he-s-not-entirely-wrong-but-he-s-not-e-kmhvbugvv","interactionStatistic":[{"@type":"InteractionCounter","interactionType":{"@type":"LikeAction"},"userInteractionCount":10},{"@type":"InteractionCounter","interactionType":{"@type":"CommentAction"},"userInteractionCount":6}],"keywords":"open-source,code-review,ai-assisted-development","timeRequired":"PT4M"}
{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https://daily.dev"},{"@type":"ListItem","position":2,"name":"Trends","item":"https://daily.dev/sources/trends"},{"@type":"ListItem","position":3,"name":"DHH says ban AI contributions, you're a guild protectionist. He's not entirely wrong, but he's not entirely right either."}]}
{"@context":"https://schema.org","@type":"WebPage","@id":"https://daily.dev/posts/dhh-says-ban-ai-contributions-you-re-a-guild-protectionist-he-s-not-entirely-wrong-but-he-s-not-e-kmhvbugvv","comment":[{"@type":"Comment","text":"I like the take to let AI in for open source - it’s correct and coherent with its principles - but who the fuck is “DHH”? You need to give actual names (or at minimum, a citation behind why we’re left with just someone’s initials). Had to Google.","datePublished":"2026-06-05T14:56:04.364Z","dateModified":"2026-06-05T14:57:23.435Z","url":"https://daily.dev/posts/kMHvBUgVv#c-AUHdvcopj","author":{"@type":"Person","name":"Anthony Izzo","url":"https://daily.dev/amizzo","image":"https://lh3.googleusercontent.com/a/ACg8ocI3KpxrCJphZmqCBYWzrlZz0yUJS3pQF3RYarylAe8SP_G6_KUCoQ=s96-c"},"interactionStatistic":{"@type":"InteractionCounter","interactionType":{"@type":"LikeAction"},"userInteractionCount":2}},{"@type":"Comment","text":"I’m not ant-AI, but the guild protectionist comparison from DHH is way off, as accepting AI submission to a codebase you’re responsible means you either committing to reviewing that code, or trusting it blindly. One is bad software maintenance practice, the other is committing to an endless evergrowing list of low effort submission, all of which is unpaid work.\nBuild whatever you want with AI. Open source it if you want. But contributing upstream is not a right, it is a relationship with the project. If you are not bringing understanding, care, testing, and responsibility, then you are not contributing. You are assigning work.","datePublished":"2026-06-05T15:00:20.384Z","url":"https://daily.dev/posts/kMHvBUgVv#c-uDJhzlVCN","author":{"@type":"Person","name":"Asmundur Gudjonsson","url":"https://daily.dev/asmundur","image":"https://media.daily.dev/image/upload/s--OvFUoEga--/f_auto/v1716570572/avatars/avatar_PeX2HvjmT1erIepSKluaw"},"interactionStatistic":{"@type":"InteractionCounter","interactionType":{"@type":"LikeAction"},"userInteractionCount":2}},{"@type":"Comment","text":"I mean how is that critique anyways guild restrictions were a good thing.\nWhile of course imperfect they assured quality as a precursor to protected titles (like Doctors) today. Gatekeeping isn’t inherently bad. it depends on the nature of the gates.\nI don’t want some ambitious guy to just operate on me, nor do i wan’t their code in critical systems.\nMost AI policies aren’t an outright ban anyways and just hold the contributor accountable for their generated code.","datePublished":"2026-06-12T10:32:20.294Z","url":"https://daily.dev/posts/kMHvBUgVv#c-92fgwkUmN","author":{"@type":"Person","name":"l9521787","url":"https://daily.dev/l9521787","image":"https://lh3.googleusercontent.com/a/AAcHTteQ9_ph6p5v02nn2-faHYGHFOWnqVD1uRpitrcpGIoS=s96-c"}},{"@type":"Comment","text":"DHH, aka Rails Jesus, is always controversial., why else read his blog if the take isn’t out of the norm.","datePublished":"2026-06-07T16:43:10.643Z","url":"https://daily.dev/posts/kMHvBUgVv#c-7YPv2j9F3","author":{"@type":"Person","name":"7-Zark-7","url":"https://daily.dev/zx8086","image":"https://media.daily.dev/image/upload/v1666169239/avatars/avatar_rsfQchPIj.jpg"}}]}
```

