Felipe Luis
Salgueiro

Felipe Luis Salgueiro / From passenger to owner

From passenger to owner: what Vibe Coding hides from you

Lesson 02 of the Building with AI series. The point is not to become a career developer: it is to understand enough not to delegate your own product without criteria.

Lesson 02 · August 1, 2026 · 140 min · ~150 professionals live · NoCode Startup

A lesson about no longer being a passenger in your own product: specify, review, and keep systems changeable.

Why this topic now

  • Cost, silent breakage, and platform dependency make it insufficient to delegate everything to AI without understanding what runs underneath.
  • The lesson replaces blind acceptance with specification, review, and quality foundations.

Format

Monthly live lesson at NoCode Startup. Recording is exclusive to students; this page records public concepts and materials in text for reference.

Explore NoCode Startup

What the student learns

  • Why vibe coding accumulates cost, lock-in, and technical debt.
  • The inversion: 80% specification and 20% execution.
  • RFCs, DRY, ETC, orthogonality, and quality gates as review criteria.

What they can do

  • Identify coupled, repeated, or uncomponentized code.
  • Write a basic RFC before asking an agent to execute.
  • Set up a simple quality gate and name the next learning step.

Concepts covered in detail

Vibe Coding — what it is and why it expires

Vague prompts, unreviewed acceptance, and hope may work for a demo, not for a product. The issue is not the model but the system that guides and reviews it.

Token cost — the end of flat subscriptions

Understanding what runs makes it possible to choose models by task, inspect consumption, and prevent heavy-use costs from becoming invisible.

Vendor lock-in — the risk no one sees until it is late

Lock-in appears when changing model or harness requires rewriting a system. The alternative is harness-agnostic architecture: Markdown context, core scripts, and skills as a directory.

Time inversion — 80% specification, 20% execution

When typing becomes cheap, time returns to context, architecture, acceptance criteria, and review before code generation.

RFC — the contract with the agent

An RFC describes context, inputs, outputs, rules, validations, acceptance criteria, and integrations. The agent executes against a visible contract.

DRY — AI repeats code by default

One authoritative source per piece of knowledge avoids correcting many places and reduces divergence.

ETC — AI couples everything

Decisions should be easy to change; implicit and repeated relationships make every change expensive.

Orthogonality — AI does not componentize

Components should change without breaking one another. Separating responsibilities is necessary for a product to keep evolving.

Quality Gates — automate what code review cannot cover

Automated validations establish a review floor for generated code and expose deviations before production.

Minimum floor — what to study to stop being a passenger

The goal is not to become a career developer; it is to read product, architecture, and quality well enough to decide and review.

Lesson structure

  1. Thesis: owner, driver, and passenger.
  2. The cost of not knowing: cost and dependency.
  3. Multi-model, agnosticism, and RFC.
  4. Quality principles and the next step.

Materials and destinations

The Pragmatic Programmer — cited principles