Slop advisory level: Elevated (it has never not been elevated)

Satire. Not a real agency.

Public information notice № 1

The machine wrote it. You approved it.

Software is now written faster than anyone can understand it. The Bureau of Slop Abatement asks all developers to remain calm, stay seated, and read the diff.

Lines generated since you arrived*
0
Lines understood*
0

*Fictional session. Invented rates. The growing gap is the point.

What is slop?

A short definition, so that everyone is alarmed about the same thing.

slop /slɒp/ noun, uncountable, unfortunately

Software that was produced faster than it was understood.

“It passed review.” “Who reviewed it?” “It was a very large review.”

  • 73%of pull requests over 1,000 lines are approved in under 90 seconds.
  • 1 in 4new helper functions already existed, two folders away.
  • 0people on the average team can explain the billing module without opening it.

Notice of correction

The Bureau invented all three of those numbers a moment ago. You did not check. They were large, they were tidy, and they agreed with you, so you nodded and kept scrolling. That is the entire mechanism by which slop enters a codebase.

Know the signs

Slop is rarely noticed at the time of infection. Most teams discover it months later, during an outage, from a customer.

  1. Stage I: Early

    • You approve changes you have not read, but you leave one comment, so it feels like reading.
    • There are four functions that format a date. Each is used once.
    • A pull request is described as “small” by the thing that wrote it.
    • The phrase “it works on the happy path” is said out loud, as reassurance.

    PrognosisTreatable. Usually dismissed as “velocity”.

  2. Stage II: Advanced

    • The tests pass. The tests test the mocks.
    • The README describes a system you used to have.
    • Questions about how login works are answered by asking an assistant, which reads the code and guesses. So do you.
    • Nobody deletes anything, because nobody is sure what anything is for.

    PrognosisSpreading. The codebase is now larger than the team’s memory of it.

  3. Stage III: Terminal

    • No single person can explain the system end to end. The system is fine with this.
    • Onboarding consists of the sentence “just ask the agent”.
    • A change is merged because rejecting it would require understanding it.
    • You ask what the software is supposed to do, and the room looks at the software.

    PrognosisStable, in the sense that a landfill is stable.

A field guide to common slop

Eight species every developer should be able to identify on sight. Each one is harmless alone. They are never alone.

  • Specimen 01

    The Silent Catch

    Exceptio devorata

    try {
      await chargeCustomer(order)
    } catch (e) {
      // ignore
    }
    Habitat
    Anywhere money moves.
    Survives review because
    Nothing fails. Nothing ever fails again.
  • Specimen 02

    The Fourth Formatter

    Formatter quartus

    formatDate(d)
    formatDateNew(d)
    formatDateV2(d)
    formatDateFinal(d) // use this one
    Habitat
    utils/, helpers/, utils/helpers/ and lib/utils/helpers/.
    Survives review because
    Finding the first three would have required looking.
  • Specimen 03

    The Narrator

    Commentarius obvius

    // Increment the counter by one
    counter += 1
    
    // Return the result
    return result
    Habitat
    Directly above the line it describes.
    Survives review because
    From a distance it looks like documentation. Most review happens from a distance.
  • Specimen 04

    The Premature Cathedral

    Abstractio praecox

    class NotificationStrategyFactoryProvider {
      // sends one email
    }
    Habitat
    Wherever a function would have done.
    Survives review because
    It resembles engineering, and nobody wants to be the one who argued with engineering.
  • Specimen 05

    The Mock Turtle

    Testudo ficta

    mockDb.getUser.mockReturnValue(user)
    
    expect(mockDb.getUser()).toEqual(user)
    // ✓ 1 passed
    Habitat
    Test suites with excellent coverage.
    Survives review because
    Coverage went up. Coverage is a number. Numbers get approved.
  • Specimen 06

    The Load-Bearing Fallback

    Defaultus optimisticus

    // should never happen
    const price = item.price ?? 0
    Habitat
    One line below the place it should have crashed.
    Survives review because
    It turned an error at 2 p.m. into a refund investigation in March.
  • Specimen 07

    The Fossilised Conversation

    Colloquium petrificatum

    // Fixed the issue from the previous attempt.
    // Now handles the case you mentioned.
    Habitat
    Comments addressed to someone who has left the room.
    Survives review because
    It is polite.
  • Specimen 08

    The Part Nobody Touches

    Terra incognita

    No sample could be obtained.

    Habitat
    Your repository. You know the folder.
    Survives review because
    Nobody has opened it since 2022. The tests pass. Do not make eye contact.

Mandatory review drill

A pull request will arrive. Review it exactly as you would on an ordinary Tuesday. This is a drill. The real thing has more files.

#4812 · opened 4 minutes ago by an agent, on your behalf

refactor: small cleanup

+4,812 −37 · 61 files changed

A long diff scrolls past, faster than it can be read.

Time under review

You have one job. It is the pull request.

Slop exposure self-assessment

Form BSA-7. Tick every statement that applies. Answers never leave your browser, which is more than can be said for your API keys.

I, the undersigned developer, declare that
BUREAU OF SLOP ABATEMENT ✶ PROVISIONALLY EST. 2023 ✶

Certificate of exposure

0/10

Classification

Awaiting declaration

No boxes ticked. Either you are new to the industry or you did not read the form. Both are consistent with the findings above.

Approved posters

For display in offices, team channels and the pull request description of your choice. Free to share. Unlike most things on this page, they were reviewed.

  • Read
    the
    diff.

    Somebody has to.

    Bureau of Slop Abatement · killslop.dev

    Download PNG
  • “LGTM” is not
    a review.

    It is a surrender with fewer letters.

    Bureau of Slop Abatement · killslop.dev

    Download PNG
  • It
    compiles.

    So does everything.

    Bureau of Slop Abatement · killslop.dev

    Download PNG
  • Is your merge really necessary?

    Think twice before shipping 4,000 lines you have not met.

    Bureau of Slop Abatement · killslop.dev

    Download PNG
  • Know what
    you ship.

    Someone should understand the system. Ideally more than zero people.

    Bureau of Slop Abatement · killslop.dev

    Download PNG
  • Loose prompts sink ships.

    “Make it work” is not a specification.

    Bureau of Slop Abatement · killslop.dev

    Download PNG
  • It did what
    you asked.

    Unfortunately, you asked it to “make it work”.

    Bureau of Slop Abatement · killslop.dev

    Download PNG
  • I declare
    it reviewed!

    You can’t just say “LGTM” and expect the bugs to leave.

    Bureau of Slop Abatement · killslop.dev

    Download PNG

    After The Office

  • This could
    happen
    to you.

    “The spec was not clear. Let me amend that.” The Machine

    Bureau of Slop Abatement · killslop.dev

    Download PNG
  • Look
    both ways.

    You are the documentation.

    Bureau of Slop Abatement · killslop.dev

    Download PNG
  • Safe to
    remove.

    No one could remember why it was there.

    Bureau of Slop Abatement · killslop.dev

    Download PNG
  • Everything
    is green.

    Warning lights were disabled to reduce noise.

    Bureau of Slop Abatement · killslop.dev

    Download PNG
  • Built
    to spec.

    Breathing was not in the specification.

    Bureau of Slop Abatement · killslop.dev

    Download PNG
  • Tested and
    approved.

    The test bridge was on the ground.

    Bureau of Slop Abatement · killslop.dev

    Download PNG
  • You are in
    safe hands.

    Each department assumed the other was holding him.

    Bureau of Slop Abatement · killslop.dev

    Download PNG
  • Follow
    the manual.

    The pit was added after the last update.

    Bureau of Slop Abatement · killslop.dev

    Download PNG
  • Temporary
    solution.

    Please do not move the chair.

    Bureau of Slop Abatement · killslop.dev

    Download PNG
  • Fully
    automated.

    Please feed the man inside.

    Bureau of Slop Abatement · killslop.dev

    Download PNG
  • Expert
    assistance.

    The parachute was described in considerable detail.

    Bureau of Slop Abatement · killslop.dev

    Download PNG
  • You once
    were the
    documentation.

    But buses run on velocity.

    Bureau of Slop Abatement · killslop.dev

    Download PNG
  • Full
    modularity.

    Without the right context, the outcome becomes unpredictable.

    Bureau of Slop Abatement · killslop.dev

    Download PNG
  • 50,000
    is just
    a number.

    So are 100 lost customers.

    Bureau of Slop Abatement · killslop.dev

    Download PNG
  • Think.

    We realise this was not in the estimate.

    Bureau of Slop Abatement · killslop.dev

    Download PNG
  • Accept all.
    Find out.

    Review it before your customers do.

    Bureau of Slop Abatement · killslop.dev

    Download PNG
  • It does
    everything.
    You just
    approve.

    You are still named on the incident report.

    Bureau of Slop Abatement · killslop.dev

    Download PNG
  • Understanding
    isn’t for
    everyone.

    Unfortunately, you’re on call.

    Bureau of Slop Abatement · killslop.dev

    Download PNG
  • Look them
    in the eyes.

    Tell them you read the diff.

    Bureau of Slop Abatement · killslop.dev

    Download PNG
  • Fiction
    is not
    knowledge.

    Tell your team.

    Bureau of Slop Abatement · killslop.dev

    Download PNG
  • Too big to fit. The requirements will have to wait outside. A red stop hand. Bureau of Slop Abatement · killslop.dev.
    Download PNG
  • Built on
    artificial
    trust.

    References have not been checked.

    Bureau of Slop Abatement · killslop.dev

    Download PNG
  • In context
    we trust.

    Terms and omissions apply.

    Bureau of Slop Abatement · killslop.dev

    Download PNG
  • 50,000 lines.
    One context
    window.

    Your instructions are somewhere in there.

    Bureau of Slop Abatement · killslop.dev

    Download PNG
  • Approved by
    Schrödinger.

    Contents presumed satisfactory.

    Bureau of Slop Abatement · killslop.dev

    Download PNG
  • 50,000. An impressive amount of something. Oversized red numerals stacked on two lines. Bureau of Slop Abatement · killslop.dev.
    Download PNG
  • 50,000. Meaning to follow. Monumental red numerals on a black pedestal. Bureau of Slop Abatement · killslop.dev.
    Download PNG

In the event of slop

Please study this card before take-off. Your nearest exit may be several refactors behind you.

  1. Stop generating.

    More code will not help. More code is how you got here.

  2. Locate a human who understands the system.

    If no such human can be found, do not panic. This is now the most common configuration.

  3. Do not ask the slop to explain itself.

    It will. Fluently, and at length. That is not the same as being right.

  4. Decide what the thing is supposed to do.

    Then put that somewhere a person will actually look. Do this before the code: an old custom the Bureau is working to revive.

  5. Then let the machines type.

    They are very good at it. They were never the problem. See § 1.

The countermeasure

The Bureau is fictional. The problem is not. Neither is this part.

File BSA-8 · eyes only · yours will do

The people behind the Bureau are building a countermeasure: an actual developer tool, for teams who would like to keep understanding their software while the machines do the typing.

It is called . It works by , so that your team can without .

Further details are withheld, partly for effect.

Status
In development
Anti-AI
No
Satirical
Not this bit

Request clearance

Leave an address and you will get occasional updates: when it exists, what it is, and whether you can try it. Nothing else.

No drip campaign. No “just circling back”. No selling your address to anyone, including the Bureau.

Questions the Bureau is tired of

Is this a real government agency?
No. No government has this much self-awareness. KillSlop is satire, and the Bureau of Slop Abatement exists only on this page.
Is this anti-AI?
No. The Bureau generates code every day and feels fine about it. The campaign is against shipping software that nobody understands, a practice that long predates AI and has recently been issued a jetpack.
So is the slop coming from the tools, or from me?
Yes.
I am an engineering manager. Is my team affected?
You are reading a satirical website about code review during working hours. The Bureau has some news.
Who is behind this?
The Bureau’s staff build developer tools and have personally merged every specimen in § 3. There is a real product coming. See § 8.
What is the product?
That is covered in § 8, under the black rectangles. We realise this is annoying. It is also working.
May I use the posters?
Yes. Print them, post them, pin them to a pull request. If one of them prevents a single 4,000-line “small cleanup”, the Bureau will consider its budget justified. Its budget is zero.