Prompt engineering playbook for programmers

Confusion, Non-determinism, and Inconsistency

  • Several programmers describe LLM behavior as disorienting: small wording changes yield different answers, results vary run-to-run, and model updates break previously “good” prompts.
  • This randomness makes it hard to justify heavy upfront “prompt engineering” as a reliable process.

Utility vs Overhead for Programmers

  • Many say they’d rather just write the code: by the time a long prompt is crafted, refined, and run, the task could be done manually.
  • LLMs are seen as most useful for quick documentation lookup, simple refactors, boilerplate, and debugging when you paste actual code or stack traces.
  • Agentic tools are criticized for burning money/tokens and sometimes mangling codebases.

Are Prompt Guides Really Needed?

  • One camp: guides are mostly hype; you learn “prompt fu” quickly through use, similar to early “Google-fu” books.
  • Another camp: many users won’t systematically experiment, so curated tips and watching experts can meaningfully improve results and reveal non-obvious tricks.

Long vs Short Prompts, Context, and Iteration

  • Multiple commenters report that shorter, focused prompts plus iterative refinement outperform long, intricate ones.
  • Irrelevant detail is seen as harmful; relevant, structured context (markdown specs, project structure, style guides) can help.
  • Some feel verbose prompts just get echoed back and give a false sense of control.

Specific Prompting Techniques Discussed

  • Widely cited “real” techniques:
    • In-context examples (few-shot).
    • Chain-of-thought / step-by-step reasoning (less critical on newer “reasoning” models).
    • Structured output (JSON or schemas, sometimes via two-stage prompts).
    • Role / framing prompts (expert vs junior, critic vs collaborator).
  • Using domain-specific jargon and expert vocabulary can noticeably change answers.

Debate Over “Prompt Engineering” as a Concept

  • Strong pushback against calling this “engineering”: it’s described as trial-and-error, craft, or just clear technical writing/communication.
  • Others argue that once you systematically test, version, and benchmark prompts—especially in pipelines and API workflows—it starts to resemble engineering practice.
  • There’s concern that the focus on prompting is displacing core programming skills, though some see “native language as a programming language” as an inevitable shift.

Limits and Need for Better Tooling

  • Consensus that if a task is beyond current LLM capability, no prompt will fix it; you must decompose into subtasks.
  • Some argue that IDEs/agents should handle low-level prompt optimization, with developers focusing on clear requirements and tests rather than micromanaging prompts.