No entry matches that. Try a shorter fragment — the search matches on term text only.
This page exists so you can follow a conversation, not join one performatively. Most of these words are cheap to understand and expensive to misuse. The register note on each entry tells you whether a term is neutral, a criticism, or praise — because several of them sound neutral and are not.
Four rules before you use any of it
Understand ≫ deploy
Recognising yak shaving when someone says it costs nothing. Saying it yourself in week five is the tell that you learned it from a glossary. Comprehension is the goal here; usage follows on its own once you've heard a term in the wild twenty times.
Several of these are insultsnote
Calling code hacky, janky, smelly or a kludge is a judgement on the person who wrote it as much as the code. Fine among peers who've agreed the standard. Not fine from someone evaluating work they didn't do.
Precision hides in the slang
Some of these words are load-bearing technical distinctions in casual dress — regression, race condition, blast radius, idempotent. Using them loosely is more visible than not using them at all.
Etymology is the retention hook
Where a term has a real and documented origin, it's given below. Where the popular origin story is disputed, that's flagged. A word whose history you know is a word you keep.
The vocabulary of judgement. This is the register you will hear most when someone assesses AI-generated code — and the one closest to your actual goal, since evaluating output is the skill you're building.
Code that has gone wrong
cruftcriticism
Accumulated dead weight — old files, unused functions, settings nobody remembers setting. Not broken, just there.
MIT and Harvard campus slang. Often traced to Harvard's Cruft Laboratory; that derivation is plausible but unproven.
kludge criticism
An inelegant fix that works. Pronounced klooj. Implies the author knew it was ugly and shipped it anyway.
Jackson Granholm's 1962 Datamation essay "How to Design a Kludge"; earlier US military usage predates it.
hack
Two opposite meanings. A hack = an ugly shortcut. A nice hack = an elegant, clever solution. Tone and article decide which.
MIT Tech Model Railroad Club, early 1960s, where it originally meant a prank done with skill.
hackycriticism
Only the ugly sense. Works, but by a route nobody would choose twice.
jankycriticism
Unreliable, poorly made, liable to behave oddly. Broader than code — a janky UI, a janky build.
General American slang, not programming-specific; imported wholesale.
gnarly / hairycriticism
Complex in an unpleasant way. Many interacting parts, no clean seam to cut along.
code smellcriticism
A surface signal that something deeper is wrong. Not a bug — a shape that usually indicates one is coming.
Coined by Kent Beck; made standard by Martin Fowler's Refactoring (1999).
brittlecriticism
Works now, breaks at the smallest change. The opposite of robust.
spaghetti codecriticism
Control flow so tangled you can't trace what runs when.
1970s, from the structured-programming argument against unrestricted goto.
boilerplate
Code you must write but that carries no decision — the same twenty lines every project needs. Neutral, occasionally a complaint about the tool.
19th-century newspapers: pre-cast metal plates of syndicated filler, shipped to local papers.
magicusually criticism
Behaviour that happens without visible cause. "Too much magic" means you can't see why it works, so you can't fix it when it doesn't.
footguncriticism
A feature that makes it easy to injure yourself. Not a bug — a design that invites misuse.
sharp edges
The parts of a tool that cut you if handled wrong. Softer than footgun; often said affectionately about a tool worth the risk.
bit rot
Code that stops working though nobody touched it — the world around it moved. A dependency updated, an API changed, a certificate expired.
Rube Goldbergcriticism
An elaborate mechanism for a simple job. British and Danish equivalent: a Heath Robinson contraption.
Rube Goldberg, American cartoonist, drew absurdly convoluted machines from the 1910s.
Judgement calls people argue about
technical debt
Shipping something expedient now and paying interest on it later, in slower changes and more bugs. The metaphor's power is that the debt is sometimes worth taking.
Ward Cunningham, 1992. He later objected that people used it to excuse bad code rather than describe a deliberate trade.
refactor
Change the structure without changing the behaviour. If behaviour changed, it wasn't a refactor — a distinction people are strict about.
William Opdyke's 1992 doctoral thesis; Fowler's 1999 book made it universal.
gold-platingcriticism
Adding polish and capability nobody asked for, usually because it was more interesting than the actual task.
YAGNI
"You Aren't Gonna Need It." Don't build for the requirement you're anticipating; build for the one you have.
Extreme Programming, late 1990s — Kent Beck and Ron Jeffries.
DRY
"Don't Repeat Yourself." Each piece of knowledge should live in exactly one place. The joke inverse is WET — "Write Everything Twice."
Hunt & Thomas, The Pragmatic Programmer (1999) — on your reading list from Week 8.
KISS
"Keep It Simple, Stupid." Simplicity as a design constraint, not an aesthetic preference.
Usually attributed to Kelly Johnson at Lockheed's Skunk Works, 1960. The attribution is contested and poorly sourced.
premature optimization
Making code fast before you know what's slow. Cited constantly, usually as a stop sign.
Knuth, 1974 — and routinely misquoted. His actual line qualifies it: about 97% of the time. He argued the remaining 3% matters enormously.
cargo cultcriticism
Copying the form of something that works without understanding the mechanism, and expecting the result to follow.
Feynman's 1974 Caltech commencement address on "cargo cult science." The underlying anthropology he referenced is itself disputed as a description of Melanesian movements.
Chesterton's fence
Don't remove something until you understand why it was put there. The most useful single phrase for directing an AI that wants to tidy your codebase.
G. K. Chesterton, The Thing (1929), arguing against reform-by-instinct.
greenfield / brownfield
Building from nothing versus building into something that already exists and has commitments. Brownfield is harder and is the normal case.
Borrowed from construction and land development.
idiomaticpraise
Written the way that language's community writes it. Working code can be unidiomatic; it reads as translated from another language.
elegantpraise
Achieves the result with less machinery than you expected. The highest ordinary compliment.
The language of work in flight. Most of this is about scope and risk — deciding what counts as done, and how much damage a change can do if it's wrong.
Scope and state
ship / ship it
Release to real users. Ship it as an exclamation means "good enough, stop polishing."
WIP
Work in progress. Marking something WIP signals "look, but don't judge it as finished."
MVP
Minimum viable product — the smallest thing that tests whether the idea works. Widely abused to mean "the version we cut corners on."
Frank Robinson, 2001; popularised by Eric Ries's The Lean Startup.
spike
A short throwaway build done purely to answer a question — is this possible, how hard is it. The output is knowledge, not code.
POC
Proof of concept. Demonstrates feasibility. Not built to survive contact with users, and shouldn't be promoted into production — though it constantly is.
scaffolding
Generated starting structure — folders, config, empty functions. Support for building, not the building.
stub
A placeholder function that returns something plausible so the rest can be built and tested around it.
mock
A fake stand-in for a real dependency during testing — a pretend database, a pretend API. Lets you test your code without calling anything expensive or slow.
happy path
The route through your code where everything is as expected. Most AI-generated code handles the happy path well and the rest thinly — which is where you should look first.
edge case
An input at the boundary of what you planned for — empty file, zero rows, a name with an apostrophe, a date in February.
corner case
Two or more edge conditions at once. Strictly distinct from edge case, though used interchangeably by most people.
scope creepcriticism
The task quietly growing while you work on it. The dominant failure mode when directing an agent that is eager to help.
table stakes
The minimum to be taken seriously at all. Not a differentiator — the price of entry.
Poker: the chips you must have on the table to play the hand.
80/20 it
Take the 80% of the value available for 20% of the effort and stop.
Pareto's observation on Italian land ownership, 1896, generalised well beyond what it supports.
Risk and release
blast radius
How much breaks if this change is wrong. The single most useful question to ask before letting an agent execute anything.
Military and nuclear terminology, adopted by site reliability engineering.
prod / staging / local
The three environments. Local is your machine, staging is a rehearsal copy, prod is where real users are. "Don't test in prod" is the joke and the rule.
canary
Releasing to a small slice of traffic first and watching before going wider.
Canaries carried into coal mines to detect gas before it reached lethal concentration for people.
feature flag
A switch that turns new behaviour on or off without redeploying. Lets you ship code dark and enable it later — or kill it instantly.
rollback / revert
Return to the previous working state. Revert usually means undoing a specific change in version control; rollback means returning a whole deployment.
hotfix
An urgent fix applied straight to production, skipping the usual process. Always a decision with a cost.
band-aid / duct tapecriticism
A fix that stops the symptom without touching the cause. Sometimes correct — at 3am it's usually correct — but it's understood as deferred work.
dogfooding
Using your own product in real work before asking anyone else to. Your learning plan is structured around this.
Microsoft, around 1988 — a Paul Maritz email titled "Eating our own dogfood." The precise origin is contested.
idempotent
Running it twice has the same effect as running it once. Critical for anything scheduled or retried — the difference between a safe automation and one that sends four copies of the same email.
Mathematics: an operation where f(f(x)) = f(x).
land
To get a change merged into the main branch. "It landed yesterday."
punt / park
Defer deliberately. Punt carries a slight sense of giving up on solving it properly; park is neutral.
American football — kicking the ball away rather than risking the down.
Code review conventions are unusually literal. Several of these are prefixes with agreed meaning — using them correctly signals more competence than any amount of vocabulary elsewhere on this page.
Review shorthand
PR
Pull request — a proposed set of changes, offered for review before merging. MR (merge request) is the same thing on GitLab.
diff
The set of lines added and removed. "Reading the diff" is the core evaluation act — and the one you're building toward.
LGTMapproval
"Looks good to me." Approval. LGTM with nits means approved, fix the small things at your discretion.
nit:
A prefix marking a comment as trivial and non-blocking — spelling, naming, formatting. Prefixing it is a courtesy: it tells the author they may ignore you.
blocking / non-blocking
Whether your comment must be resolved before merge. Saying which you mean is the whole etiquette of review.
PTAL
"Please take another look" — sent after addressing review comments.
SGTM
"Sounds good to me." Agreement with a plan, as opposed to LGTM's agreement with code.
rubber stampcriticism
Approving without actually reading. The named failure mode of AI-assisted development — and the exact thing your evaluation threshold exists to prevent.
drive-by
A quick unsolicited comment or fix from someone not otherwise involved. Can be generous or irritating depending on delivery.
over the wallcriticism
Handing work to the next person without the context they need to carry it.
Working with people
rubber ducking
Explaining your problem aloud to something that can't help — traditionally a rubber duck on the desk — and finding the answer in the act of explaining.
Hunt & Thomas, The Pragmatic Programmer (1999). The mechanism is a genuine finding in the psychology of self-explanation, not just a joke.
bikesheddingcriticism
Spending disproportionate time on the trivial part, because it's the part everyone feels qualified to have a view on.
C. Northcote Parkinson's law of triviality (1957): a committee approves a nuclear reactor in minutes, then argues for an hour about the bike shed.
yak shaving
The chain of unrelated prerequisite tasks standing between you and the thing you sat down to do. You wanted to fix one line; six hours later you're updating a package manager.
Coined by Carlin Vieri at the MIT AI Lab, after a Ren & Stimpy episode.
bus factor
How many people would have to be hit by a bus before the project stops. A bus factor of one is a warning, and describes most solo-built internal tools.
blocker
Something preventing progress that you can't resolve alone. Naming blockers is the entire point of a standup.
standup
A short daily status meeting, historically held standing so it stays short.
design doc / RFC / ADR
Written proposals circulated before building. RFC = request for comments; ADR = architecture decision record, which captures what was decided and why, so future readers don't remove the fence.
RFC comes from the ARPANET documents of 1969, deliberately titled to sound tentative.
pairing
Two people, one piece of work, in real time. What you're doing with an agent is structurally closer to pairing than to delegation.
bump
Two meanings. Bump a thread = nudge for a response. Bump a version = increase a dependency's version number.
take it offline
Stop discussing this here; two of us will resolve it separately. Corporate rather than technical, but constant in engineering meetings.
The most important entry on this page is silent failure. Everything else here describes breakage that announces itself. Systems that answer fluently and wrongly — which is the shape of the agent you intend to build — fail in the one category that has no error message.
Kinds of wrong
bug
A defect. The general term for anything the code does that it shouldn't.
The famous story is Grace Hopper's moth taped into the Harvard Mark II log, 1947. The artifact is real; the etymology is not — "bug" for an engineering fault appears in Edison's letters in 1878. The log entry is funny because the word already existed.
silent failurethe dangerous one
The system does the wrong thing and reports nothing. No crash, no error, no failed test. Retrieval returns the wrong documents and the answer reads perfectly. This is the failure class that behaviour-based checking cannot catch, and the reason evaluation sets exist.
regression
Something that used to work and now doesn't. Distinct from a new bug: it means a change broke existing behaviour.
flaky
A test that passes and fails on identical input. Usually timing or ordering. Corrosive, because it trains people to ignore failures.
heisenbug
A bug that disappears when you try to observe it — the act of adding logging changes the timing enough to hide it.
Heisenberg's uncertainty principle. Siblings exist: bohrbug (reliably reproducible), mandelbug (chaotic).
race condition
Two things happen concurrently and the result depends on which finishes first. Intermittent by nature, and the usual cause of flakiness.
deadlock
Two processes each waiting for the other to release something. Neither moves. Nothing errors — it just stops.
off-by-one
Counting from the wrong end, or one too many or few. Ubiquitous enough to be a joke: "the two hardest problems in computing are cache invalidation, naming things, and off-by-one errors."
gotcha
A behaviour that is technically documented but surprising, and catches everyone once.
Diagnosing and responding
repro
Short for reproduce. Repro steps = the exact sequence that triggers the bug. "I can't repro" means it doesn't happen for them.
MRE
Minimal reproducible example — the smallest piece of code that still shows the problem. Producing one usually reveals the cause before anyone else reads it.
works on my machinejoke / accusation
Said ironically. Means the environments differ and nobody has established how. The reason containers exist.
stack trace / traceback
The chain of calls that led to an error. Read it bottom-up: the last lines say what broke and where.
fell over / blew up / choked
Informal for crashed. Choked on names the input: "it choked on the empty rows."
thrashing
Working hard, making no progress — a machine swapping memory endlessly, or a person changing approach every ten minutes.
in the weeds
Lost in detail, no longer tracking the goal.
rabbit hole
An investigation that keeps going deeper and stops being worth it. Distinct from yak shaving: yak shaving is necessary prerequisites, a rabbit hole is curiosity.
incident / sev
Something broken in production, with a severity level. Sev 1 is the whole thing is down.
postmortem
Written analysis after an incident. Blameless postmortem is the norm: the discipline of asking what made the mistake likely rather than who made it.
root cause / five whys
Digging past the proximate failure to the condition that allowed it. Contested: the premise that complex failures have a single root cause is disputed in modern resilience engineering.
Five whys comes from Sakichi Toyoda and the Toyota Production System.
on-call / paged
Being the person a system wakes at 3am. "I got paged" — from the pagers this was done with.
observability
Whether you can tell what a running system is doing from the outside. Logs, metrics, traces. The discipline that replaces reading code when reading stops scaling.
Control theory: whether internal state can be inferred from external outputs.
This vocabulary is under a year old and still moving. Several of these terms are vendor coinages that became general usage, which means the definitions vary by who's speaking. Where a term is contested or marketing-inflected, that's flagged.
Working with agents
vibe coding
Building by describing what you want and accepting the output without reading it. Originally descriptive and slightly self-mocking; now used both as a badge and as an accusation.
Andrej Karpathy, February 2025. His original framing explicitly included not reading the diffs.
agentic
A system that decides its own next step and acts, rather than answering and stopping. The word carries a lot of marketing weight and often means only "it calls tools in a loop."
one-shot
Got it right on the first attempt without correction. "Claude one-shotted it." Distinct from the older technical sense of one-shot / few-shot prompting, which means how many examples you gave it.
YOLO mode
Running an agent with approval prompts disabled, letting it execute without asking. Named accurately.
plan mode
Read-only operation — the agent inspects and proposes but writes nothing. Your Phase 1 rule.
sub-agent
A separate agent instance with its own isolated context, given one job by a parent agent. Isolation is the point: a fresh reviewer catches what the author's context biases it against.
human in the loop
A person approves before an action takes effect. Often abbreviated HITL. Worth noting: it describes an architecture, not a guarantee — a human who approves without reading has removed themselves from the loop while remaining in the diagram.
guardrails
Constraints preventing an agent doing certain things. Usefully concrete when it means permissions and allowlists; near-meaningless when it means "we told it not to."
system prompt
Standing instructions given to a model before any user message. For an advisory tool, this is where the actual product design lives.
How they fail
hallucination
Fluent, confident, wrong. The term is contested: researchers have argued confabulation is more accurate, since hallucination implies false perception rather than false generation. It stuck anyway.
slopcriticism
Low-quality AI-generated output produced at volume — text, code, images. Coined as a deliberate parallel to spam.
context rot
A long session degrading as the context window fills with stale, contradictory or irrelevant material. The practical argument for starting fresh sessions per task.
context window
How much text a model can hold at once. Everything outside it does not exist to the model, no matter how important it was ten minutes ago.
prompt injection
Instructions hidden in content the model reads — a web page, a document, an email — that the model then treats as commands. The core unsolved security problem for agents with tool access.
jailbreak
Getting a model to ignore its own constraints. Distinct from prompt injection: jailbreaking is done by the user, injection is done to the user.
token burn
Consuming context or spend on work that produced nothing. The cost side of running fleets of agents.
sycophancy
A model agreeing with the user rather than being accurate. A measured, named failure mode — and the specific risk in any reflective or advisory tool built on one.
benchmaxxingcriticism
Optimising a model to score on published benchmarks rather than to be useful. The accusation levelled whenever benchmark gains outpace felt improvement.
Checking whether it works
eval / evals
A fixed set of inputs with known-good answers, run against the system to score it. Evals are to probabilistic systems what tests are to deterministic ones — and they are the thing that replaces reading every line.
ground truth
The known-correct answer you score against. Assembling it is manual, unglamorous, and the part everyone skips.
golden set
The curated collection of cases you always run before shipping a change. Small, hand-checked, stable.
RAG
Retrieval-augmented generation — fetch relevant documents first, then answer from them. A retrieval strategy that appears to the model as a callable tool, not an architecture requirement.
chunking
Splitting source documents into pieces small enough to retrieve and fit in context. Where you cut determines what can ever be found.
embedding
A list of numbers representing a piece of text's meaning, so that similar meanings sit near each other and can be found by proximity rather than by keyword.
recall / precision
Two ways to be wrong. Recall: did you find everything relevant. Precision: was everything you found relevant. Improving one usually costs the other.
temperature
How much randomness in the model's choices. Lower is more predictable, higher more varied. Not a creativity dial, though it's described as one.
MCP
Model Context Protocol — a standard for wiring external tools to a model. A connection convention, not a runtime component of an agent.
Written constantly, said aloud occasionally. These carry no technical content — they're conversational compression. Worth recognising instantly so they don't interrupt your reading.
Hedges and qualifiers
TL;DR
"Too long; didn't read." Introduces a one-line summary, usually written by the same author who wrote the long version.
IIRC
"If I recall correctly." Signals the claim is from memory and unverified.
AFAIK / AFAICT
"As far as I know" / "as far as I can tell." The second is stronger — it implies they looked.
IMO / IMHO
"In my opinion" / "in my humble opinion." The H is usually ironic.
FWIW
"For what it's worth." Offers something without insisting on it.
YMMV
"Your mileage may vary." This worked for me and may not for you.
American fuel-economy advertising disclaimers.
ISTM
"It seems to me." Softer than IMO.
WLOG
"Without loss of generality." Borrowed from mathematics; means the simplification doesn't weaken the argument.
Pointing and asking
RTFMrude
"Read the manual" — with an expletive in the middle. Hostile. Its existence tells you something about the culture it came from.
ELI5
"Explain like I'm five." A request for the version without jargon. Not an admission of incompetence — used freely by senior people crossing into an unfamiliar domain.
TIL
"Today I learned." Prefaces something the writer just found out, usually with mild embarrassment that they didn't know it.
ICYMI
"In case you missed it."
+1 / -1
Agreement or objection, without adding argument. In some processes -1 is a formal veto.
SSOT
"Single source of truth" — the one place a fact lives, so it can't disagree with itself.
foo / bar / baz
Placeholder names in examples, meaning nothing. If you see foo in code, it's illustrative and not real.
MIT, 1960s; foobar likely from the WWII military acronym FUBAR.
bikeshed (v.)
Used as a verb: "we bikeshedded the button colour for an hour."