Flask's creator refuses to be an unpaid code reviewer for everyone's LLM

Miguel Grinberg, who taught a generation Flask, decided he has better things to do than triage AI-generated pull requests. Now he demands an issue first, with proof a human is behind it. The thread split on whether that friction fixes anything.

In brief

Miguel Grinberg borrowed Cory Doctorow's 'reverse centaur' — a human reduced to serving a machine — to describe what open source maintenance has become: spending your days reviewing code an LLM wrote and nobody understands.

His fix is friction: open an issue first, in your own voice, no LLM-generated novel with bullet points and emojis. A Netflix engineer in the thread noted that ticket queues aren't reverse centaurs at all — a person is on the other end.

A maintainer decides he is not the machine's reviewer

Reverse centaur card from the blog post
Reverse centaur card from the blog post

Miguel Grinberg — author of the Flask Mega-Tutorial that a generation of Python developers learned from — wrote a short, pointed post about who he refuses to become. The term is Cory Doctorow's: a reverse centaur is the inversion of the helpful centaur (human up top, machine below). It is a human harnessed beneath the machine, puppeteered by it, doing the dull labor the system needs.

For a maintainer, that labor is reviewing a flood of unsolicited pull requests an LLM generated, where the submitter doesn't understand the change and the burden of judging its quality lands entirely on him. His line:

"I have decided that I have more important things to do with my life than to spend my days reviewing code produced by LLMs… I only accept work from real people."

The new rule: open an issue, in your own voice, first

Grinberg's concrete policy is friction by design. Before any PR, a contributor must open an issue describing the problem, and it must read like a human wrote it: not an LLM-generated novel with chapters, bullet points and emojis, just a simple description of the problem in your own voice. No proof of a person behind it, no interest. The post ends on the larger unease: if nearly all contributions now route through an LLM, does open source even matter anymore.

Whether the friction helps, the thread disagreed

That issue-first rule is where the 202-comment thread divided, and the division didn't fall along AI lines. It fell on whether process friction ever earns its cost.

"We had a process at one company where you had to create an issue before filing a PR. I found it most non-sensical and introducing friction for no good reason… Review is indeed the main bottleneck now for open source, and we need to solve it. Introducing more friction is hardly helping." — a commenter who hit the same rule at work

Someone who ran the identical policy from the other chair defended it, and admitted the contradiction:

"Any PR not matched to one or more issues gets automatically rejected… I'm a world champion bikeshedder, and I both hated this policy and insisted we keep it." — a developer who codes without AI

'Reverse centaur' got corrected by the thread

A systems engineer claimed the title fit him already, since his whole career has been driven by a Jira queue. An engineer at Netflix drew the line precisely:

"Reverse centaur means a machine is using you to get things done. Presumably at the other end of the ticketing system is other people. So not really the same thing at all." — a software engineer at Netflix

That distinction matters for Grinberg's fear: a ticket queue is humans coordinating through a tool, but reviewing anonymous LLM output is a human serving the tool itself.

The part nobody could answer: does open source still matter

The most uncomfortable branch took Grinberg's closing question seriously. A blind software developer described the other side of the coin: his non-programmer friends are thrilled to finally build software that works the way they want, and wondered aloud whether the ecosystem needs noncanonical software, a community app store of forks that evolve without burning out a maintainer.

The replies were not kind to the romance of it.

"There was nothing stopping them from making software before… the amount of resources to learn programming, and to make the whole process approachable, is staggering. It just took some time and effort. People are just excited that they can skip past the effort part now. But we've lost something in the process." — a developer in the thread

And the deepest version of Grinberg's anxiety, from a high-karma regular:

"How do you even discover quality libraries if you are leaving so many code decisions to LLMs? Once the LLMs train on your quality libraries how do you stop so many copies just getting pasted into people's code without your attribution…" — a developer listing the unanswered open-source questions

Grinberg's rule solves one thing cleanly: it keeps his inbox human. Whether it solves the thing he's actually afraid of, a world where the libraries he maintains get strip-mined into LLM output with no human ever coming back to contribute, nobody in the thread could say.

Get breakdowns like this every day

The top Hacker News stories, unpacked — by email, Telegram, or RSS.

Next story · 10 of 20 Read more
🌍Other

A loader poured thousands of library books into a dumpster. Then the librarians explained why

Sheila Liming watched a green dumpster appear overnight behind her university library, and a construction loader feed thousands of deaccessioned books into it. The shelves were being cleared not for more books, but for space itself.

★ 164 · 💬 161 · yalereview.org · 5 min