16 August 2026 · gchq culture open source history
github.com/gchq/BoilingFrogs is 628 stars of an intelligence agency telling itself off in public. It went up in 2016-05-11, it has been touched exactly 23 times by 6 people, and it is one of the more surprising documents any part of the British state has published.
The argument
The metaphor is the one you already know: a frog in slowly heating water does not notice, adapts until it cannot, and never jumps. GCHQ's paper applies it to itself. Its own summary is that the pace of disruptive change is increasing, that the agency feels it as much as anybody, and that it is publishing an internal research paper openly "not to present policy or guidelines, but to stimulate debate".
Read that again with the letterhead in mind. This is the organisation whose
developers, as
a separate piece here
describes, are so careful about attribution that they commit as
gchqdeveloper404. It published a document saying its engineering
organisation risked being "blissfully unaware that the world is changing" and
that its adaptations were "simply not working".
It also invited an outside reviewer. Simon Wardley, then at the Leading Edge Forum, is quoted in the README calling GCHQ "the best technical delivery organisation in the UK Government" — which reads less like flattery and more like the reason the self-criticism landed at all.
What the commit log adds
The paper's content is public and has been discussed since 2016. What has not been read is its history, and the history is short enough to read entirely: 23 commits, 6 contributors, between 2016-05-11 and 2016-06-17. That is the whole life of the document. It has 48 forks and has not been touched since.
Most of it is one person, using a personal address rather than an
agency-issued account. The rest is a handful of single commits — and
several of them are not from GCHQ at all. Tom Loosemore, co-founder of
the Government Digital Service and co-author of the design principles that
much of British digital government still runs on, committed to it from a
cabinet-office.gov.uk address in June 2016.
The last change ever made to GCHQ's paper about its own engineering culture was made by someone from the Cabinet Office. Not commissioned, not co-badged, not a joint publication. A pull request.
Why this is more interesting than it looks
Government departments do not usually edit each other's documents. They comment, they clear, they route through private offices, and the output is a position agreed between organisations with a record of who conceded what. Working in the open replaces all of that with something much smaller: anyone who can see the document can propose a change, and the change either goes in or it does not, visibly, with a name on it.
GCHQ chose that, for a paper about its own shortcomings, at a moment when GDS was at the height of its influence and arguing publicly that government technology needed exactly the kind of overhaul the paper describes. The two organisations were making the same argument from opposite ends of the state, and for a few weeks in 2016 they were making it in the same repository.
The unfinished part
The paper has not been updated since 2016-06-17. Ten years on, there is no published follow-up saying whether any of it happened, and nothing in this project's data could tell you: the work it describes would be internal, and the forge survey found that government's internal code is not visible from outside by design.
What is visible is that GCHQ still publishes — CyberChef, Gaffer, Stroom — still does it under numbered accounts, and still, on the evidence of this site, runs a tighter identity discipline than any other organisation in the estate. Whether the frog jumped is not a question the commit log can answer. That it noticed the water, in public, with its name on it, is on the record.
Method: the paper, its README and its commit history are public. Repository
figures come from this project's weekly harvest of
github.com/gchq, fork-excluded. The one individual named held a
named public role and committed from that department's address; the fact
reported is that he edited a public document. A second row in the same
repository displays the same name above an email belonging to somebody else's
machine and is not used, because a display name is not an identification.
See Method.