I trusted an LLM, now I'm on day 4 of an afternoon project
Role of LLMs: Junior Dev, Tool, or Copilot?
- Many frame LLMs as “junior devs faking competence” or “cocky grads”: can be productive but require heavy supervision.
- Others say that’s the wrong framing: LLMs don’t learn or build trust over time; the human is the one who improves at “AI wrangling.”
- Several argue they’re closer to power tools or nail guns than coworkers: massive leverage if you’re in control, dangerous if you aren’t.
- Some push back on “we’re not expecting a copilot” because commercial products are explicitly marketed as such.
Where They Work Well
- Boilerplate, scaffolding, repetitive translation (e.g., SDKs across languages, Rust no_std setups, WASM SIMD optimizations).
- Acting as an “augmented search engine” or fluent interface to docs/Stack Overflow: surfacing concepts, APIs, package options, RFC details.
- Placeholder or mundane code (tests, endpoints, simple screens), code completion/autocomplete, and research on common topics.
- Learning aid for some: interactive tutoring, synthesizing tutorials and Wikipedia-like content, generating questions from notes.
Where They Fail or Mislead
- Niche, hardware, and low-level work (Raspberry Pi/Arduino, Linux device trees, USB quirks, C alignment rules) where training data is noisy or sparse.
- Subtle logic, TS generics, UI/UX details, multi-component interactions, and “second-order” issues.
- Hallucinated APIs/behaviors, plausible but wrong math, and inability to admit ignorance.
- Long conversations accumulating context drift; repeated “fixes” that reproduce the same bug; 99%-right code that hides a brutal 1% error.
Effective Usage Patterns
- Seniors or people with strong fundamentals benefit more: they can say “this is obviously wrong” and use LLMs for acceleration, not substitution.
- Strategies:
- Maintain explicit specs/CONVENTIONS and feed them in each time.
- Use LLMs to generate tests/boilerplate, then do refactoring and design yourself.
- Restart chats when the model gets stuck; load specific docs instead of relying on generic knowledge.
- Use adversarial/custom prompts to fight sycophancy and force self-critique.
Broader Concerns and Disagreements
- Split between users who find LLMs transformational for side projects and those who waste days in “wild goose chase” debugging.
- Worry that juniors will become dependent and never build deep skills, while seniors get even more leverage (“LLM paradox”).
- Skepticism about hype that frames LLMs as imminent job-killers; many see them instead as mess-creators demanding more human oversight.