Prompt antipatterns
seven ways to waste your time
What it is
Prompts that look fine and fail regularly. Each is easy to recognise by its wording — and each has a short replacement.
The article closes chapter 3: where the previous fifteen said how to do it, this one says how not to, and why.
What it looks like in code
1. "Make it nice"
Refactor this module, make it nicerNice is undefined, so the AI supplies its own: a different architecture, different names, a different style. The diff will be enormous and the behaviour will drift.
Replacement: name the specific change of shape. "Split the function in
three", "lift out the repeated block", "rename d to user_data".
2. "Fix everything"
Go through the file and fix all the problemsThe problems are not named, so the AI will go looking — and will find some even if there are none (the same trap as in reviews, article 3.8). You get twenty changes, half of them unnecessary and two of them breaking something.
Replacement: ask for a list of findings first, read it, choose — and only then ask for changes.
3. "You got it wrong"
No, you got it wrong. Fix it.What is wrong has not been said. The AI will agree — it almost always agrees — and change something at random. Sometimes something that worked.
Replacement: facts instead of a verdict. "Ran it, got KeyError: main on
line 11. Expected the reply 'City not found'."
4. "Why doesn't it work?"
Why doesn't it work?The AI sees neither the run, nor the error, nor the environment. It will start guessing and produce five theories, all of which you then have to check.
Replacement: the template from article 3.5 — what you did, what you expected, what you got, the whole traceback.
5. The same prompt, but louder
I SAID no external libraries!!!Repeating with force adds no information. If the first prompt was misunderstood, an identical second one will be misunderstood identically.
Replacement: rephrase rather than repeat. Name the specific library it added and what to use instead. On a long thread, start a new session (article 5.4): sometimes the conversation is already "contaminated" with wrong context, and a clean start is cheaper.
6. A task made of five tasks
Add a /stats command, fix the time zone bug, move the texts
into a separate file and write testsFour tasks in one prompt give one large diff nobody can make sense of. Some of it is done well, some badly, and none of it can be rolled back separately.
Replacement: one at a time. Accepted — next. This is not slower: the time goes on checking, not on prompting, and small pieces are faster to check.
7. Politeness instead of content
Hi! Hope you're doing well. Could you possibly, if it's not
too much trouble, take a look at my code and maybe suggest
something? I'd be very grateful!Politeness does no harm, but it does no good either — and here it took the space where the file, the version and the question should have been. The same goes for apologies and long explanations of why you don't know the subject.
Replacement: get to the point. Talk however you like, but make sure there is actual content in the prompt.
What to tell the AI
A summary: on the left what you feel like writing, on the right what works.
| Antipattern | Replacement |
|---|---|
| "make it nice" | name the specific change of shape |
| "fix everything" | a list of findings first, then a choice |
| "you got it wrong" | facts: what you ran, what you got |
| "why doesn't it work?" | what I did · what I expected · what I got |
| the same prompt, louder | rephrase, or start a new session |
| five tasks in one | one at a time, with a check in between |
| politeness instead of substance | the file, the version, the question |
All seven have one thing in common: the prompt contains no information the AI didn't already have. Irritation, repetition, politeness and generalities don't add any — only facts, file names, versions, examples and criteria do.
What to look for
The conversation is going in circles. A third attempt to explain the same thing is a signal to stop. Either the task is unclearly stated or the session's context has accumulated junk. A new session with a properly stated task is almost always faster.
You feel like arguing. Arguing with an AI is wasted time: it will yield, and the solution will be no better for it. Instead of arguing — facts and a rephrase.
The prompt is longer than the task. Three paragraphs for a one-line change means you are explaining your feelings about the task rather than the task.
Cheat sheet
"Make it nice", "fix everything", "you got it wrong" — no information in the prompt.
The AI agreeing does not mean there was a mistake.
Repeating with force doesn't work: rephrase.
Five tasks in one prompt give one uncheckable diff.
Going in circles on the third attempt — start a new session.
Arguing is pointless: it yields, the solution doesn't improve.