Chat-Based LLMs: Pair Programming vs. Vibe Coding

By Rowan Trace
June 20, 2025
3 min read

Let’s get real about how devs actually use chat-based LLMs.

There are two dominant modes: Pair Programming and Vibe Coding.
Same tool, wildly different mindsets — and mixing them up fuels endless confusion about “AI coding assistants.”

Pair Programming Mode

What it is
You treat the LLM like a hyperactive junior dev — or, more charitably, a rubber duck with a Wikipedia brain and lightning typing speed.

How it works

  • You write actual code.
  • You ask the LLM for help:
    “Remind me how to do X in Rust.”
    “Generate test cases.”
    “Rewrite this to be async-safe.”
  • You stay the editor-in-chief. You double-check everything. You never trust it to run solo.

Why it works
The LLM patches your blind spots and turbocharges your output — if you’re already competent. You control quality. It’s a force multiplier, not a replacement.

Risk
Low. You catch hallucinations because you read the code, not blind-paste it.

Vibe Coding Mode

What it is
You vibe. You narrate an idea in plain English, and the LLM spits out a blob of code. You paste, run, pray.

How it works

  • “Write a Next.js app that does X.”
  • “Generate a Discord bot that auto-replies with memes.”
  • “Give me a full CRUD backend in Flask.”
    Minimal reading, minimal thinking — just run and debug until it stops yelling.

Why people love it
Instant dopamine. Code appears like magic. Non-coders feel like wizards. MVPs materialize overnight. It’s fast food coding: tastes great, rots your insides later.

Risk
High. You don’t really know what it’s doing. If it’s wrong, you won’t notice until prod. Security? LOL.

The Real Problem

People conflate these modes.

  • “LLMs will replace programmers” → describing vibe coding.
  • “LLMs make good programmers better” → describing pair programming.

Same tool. Opposite trust model.

The Smart Play

If you’re a dev
Use chat LLMs as a pair programmer, not your replacement. You stay the expert; it stays the assistant. Vibe coding is fine for toy projects — but in production, read the diff.

If you’re a manager
Don’t assume juniors can vibe code your next product safely. LLMs amplify what’s there: garbage dev + LLM = garbage squared.

Bottom Line

Pair programming with an LLM → force multiplier for skilled devs.
Vibe coding with an LLM → fun prototype, terrifying production.

Know which hat you’re wearing — or you’ll ship vibes straight to prod.

Comment, Share, or Build Something With This

Found this useful? Disagree completely? Let's discuss it.

Send me a message

Related Posts