Topic

Behavior-Driven Development (BDD)

All digests tagged Behavior-Driven Development (BDD)

· 32:05

Dave Farley - Vibe Coding - Is this really the best we can do? - AI Native DevCon June 2026

The talk argues that while AI represents a massive paradigm shift in software development, relying solely on natural language or current agentic coding practices is insufficient for building complex systems. The core message is that the industry must evolve from being 'solution-focused' to 'specification-focused.' Future programming requires defining desired behaviors using precise Domain Specific Languages (DSLs) and executable specifications (like BDD), ensuring verification at every incremental step.

Key takeaways

  1. The Limitations of Natural Language 12:10

    Natural language is inherently vague, open to misinterpretation, and lacks the simple, consistent grammar required for precise machine execution. It cannot reliably define goals or guarantee deterministic results, making it unsuitable as a primary development tool.

  2. The Role of Specification over Solution 17:25

    Programming languages should be viewed not just as tools to encode algorithms (the solution), but primarily as mechanisms to organize and communicate a precise description of the problem itself. The future program must be an executable specification of what is desired, rather than merely the code that achieves it.

  3. The Necessity of Incremental Verification 23:55

    To manage the speed and scale of AI-generated code (e.g., 12,000 lines/day), development must maintain its core engineering principles: working incrementally, treating changes as experiments, and rigorously verifying every step using continuous delivery practices.

Watch on YouTube Full article