I'm puzzled how anyone trusts ChatGPT for code

Trust vs. verification

  • Many argue “trust” is the wrong frame: you never truly trust code (from LLMs, coworkers, Stack Overflow, or your past self); you read, test, and review it.
  • Others counter that LLM code is uniquely untested and can be syntactically wrong, which they’d never accept from humans.
  • Several note that software engineering as a discipline is built on the assumption that you don’t trust code and must verify it.

How people use LLMs for code

  • Common uses: boilerplate/templates, glue code, simple scripts, API usage examples, syntax lookup, refactors, and performance tweaks.
  • Many treat LLMs like a very capable autocomplete or “well-informed intern”: good for drafts and ideas, not final code.
  • Some use them more to explain existing code (e.g., bash scripts, unfamiliar languages) than to generate new code.

Model quality, languages, and data coverage

  • Strong divide between experiences with GPT‑3.5 (often described as weak, especially for code) and GPT‑4 / specialized models (reported as much better).
  • Quality varies heavily by language and ecosystem: mainstream languages (Python, Java, C#, JS) fare better; Lisp, Autohotkey, Rust, SvelteKit, niche frameworks, and very modern APIs see more hallucinations and syntax errors.
  • LLMs struggle with highly repetitive, structurally demanding formats (e.g., Lisp parentheses), and with technologies that postdate the training cutoff.

Risks, failure modes, and misuse

  • Reported issues: hallucinated APIs, obsolete patterns, partial “framework” code with TODO comments, logical bugs, concurrency misdesigns, and mismatched brackets.
  • Concern that juniors and non-programmers may paste code they don’t understand, eroding skills and filling codebases with “AI-generated spaghetti debt.”
  • Some see LLM coding as “cargo cult programming automated,” especially when used for problems the user doesn’t grasp.
  • Others note LLMs allow much more bad code per unit time, amplifying existing problems with weak QA.

Perceived benefits

  • Many report 2–5× productivity for well-scoped tasks they already understand, mainly by reducing boilerplate and lookup time.
  • LLMs are said to be easier to “fact-check” on code than on prose because code can be run and tested.
  • Several emphasize that value comes when users spend more time reviewing, testing, and iterating than generating.