chapter one

1 Building on quicksand: the challenges of vibe engineering

 

This chapter covers

  • Documented failures of undisciplined vibe coding
  • Hidden costs of unverified AI-generated code
  • Building mental models for code ownership
  • Executable specifications as verification contracts

In AI-assisted development, the engineering process often resembles an early-stage R&D lab. Developers iterate quickly - guided by intuition and an elusive "vibe" - using language-model APIs, AI agents, and prompting techniques to turn raw ideas into working software. This kind of rapid experimentation brings tangible value: faster iteration toward product-market fit and earlier visibility into unknown unknowns inherent to every project.

However, rapid experimentation without engineering discipline has a dark side. Vibe Coding - generating apps at lightning speed but without professional rigor or security awareness - creates an illusion of progress that often fails miserably. Real-world failures, from startups being hacked within days of launch to AI commands deleting entire projects, are painful lessons in the danger of trusting AI-generated code without deep verification. Shipping AI-generated code without deep verification accumulates an invisible, long-term cost of shipping code that no one on the team truly understands or owns. Projects are built quickly… but often become unmaintainable almost immediately.

1.1 Illusion of speed or “vibe over engineering”

1.1.1 A startup hacked within days of launch

1.1.2 A command that erased an entire project

1.1.3 A pull request that turned into a trojan

1.1.4 An agent that decided to “clean up” production data

1.2 The end of scale worship: diminishing returns

1.3 Two faces of the vibe: coding vs engineering

1.4 Trust: a new kind of debt

1.4.1 From intelligent autocompletion to a partner

1.5 A new mental model for vibe engineering

1.5.1 Practical example of using a cycle

1.5.2 Tools as force multipliers: IDE + CI/CD

1.5.3 The winning loop - and the risks ahead

1.6 Owning - The last mile of vibe engineering

1.6.1 The not-the-end-yet 70% problem

1.7 The beginning of “software engineering”

1.8 Summary