World Congress 2022 Jun 15, 2022

Treat yourself - A tale about dog training and test-driven development

Mirjam Aulbach

What does dog training have to do with Test-Driven Development? Discover how treating the Red, Green, Refactor cycle like animal conditioning triggers dopamine and prevents over-engineering.

Pause
Mute Enter Fullscreen
#1 about 5 min

Finding parallels between dog training and software testing

The core philosophies of teaching animal behavior apply directly to building reliable software systems.

#2 about 3 min

Training behaviors through technical positive reinforcement

Creating reliable outcomes requires understanding internal reward mechanisms rather than relying on external assumptions.

#3 about 3 min

Defining precise acceptance criteria and progressive training steps

Clear behavioral definitions and minimal progressive increments prevent frustration and construct consistent success.

#4 about 3 min

Understanding the test-driven development cycle and workflow

Development driven by failing tests ensures functionality is built only with minimal required code and constant refactoring.

#5 about 5 min

Balancing the test pyramid with foundational unit tests

Test-driven development naturally generates a robust base of fast unit tests for agile continuous deployment.

#6 about 6 min

Building a minimal training simulator with JavaScript and Jest

Translating abstract behavioral goals into testable object-oriented classes and minimal passing assertions sets a framework.

#7 about 5 min

Leveraging dopamine feedback cycles during the development process

The internal satisfaction of making failing tests turn green mimics mammalian positive reinforcement mechanisms.

#8 about 8 min

Iterating on test cases to implement robust feature logic

Writing subsequent focused tests exposes logical flaws early and safely guides refactoring without breaking existing features.

#9 about 6 min

Managing edge cases and state variables in test configurations

Tracking interaction states and testing unexpected inputs ensures systems gracefully process invalid or punishing actions.

#10 about 4 min

Adopting test-driven design as a strategic development methodology

Approaching software architecture through small testable iterations builds cleaner logic and sustains developer momentum.

Matching moments

1:40 min

Adopting a pragmatic approach to test-driven development

Eric Deandrea Eric Deandrea · World Congress 2025

1:18 min

Reflecting on the core motivations for writing tests

Daniel Afonso Daniel Afonso · World Congress 2025

2:50 min

Why software testing builds a strong developmental foundation

Gil Zilberfeld · LIVE

2:34 min

Implementing algorithms through test-driven development methodologies and prompts

Markus Walker Markus Walker · World Congress 2023

3:54 min

Weighing the benefits and tradeoffs of test-driven development

Alex Banul · LIVE

6:24 min

Applying key software design rules to test code

Gil Zilberfeld · LIVE

Upcoming sessions on this topic

Open session

World Congress 2026 North America

September 25, 2026 · 10:20–10:50

Stage 9

Testing React Backends Like a Pro: Mocking Databases with SQLite

David Morris

Solution Architect at Leidos

David Morris
Open session

World Congress 2026 North America

September 25, 2026 · 11:40–12:10

Stage 2

Reinventing Testing Practices in the AI Era

Eric Deandrea

Java Champion & Senior Principal Software Engineer at IBM

Eric Deandrea
Open session

World Congress 2026 North America

September 24, 2026 · 15:30–16:00

Stage 6

Going beyond the code through the GitHub Copilot App: how to unlock you and your team’s superpower

Jenny Hwang

Director of User Research at GitHub

Jenny Hwang
Open session

World Congress 2026 North America

September 24, 2026 · 14:10–14:40

Stage 9

One Repo, One Strategy: Scalable Full-Stack Testing in a Monorepo World

Bartosz Leczycki, Paweł Matynia

Bartosz Leczycki
Paweł Matynia
Open session

World Congress 2026 North America

September 24, 2026 · 16:10–16:40

Outdoor Stage

When Humans Stop Writing Code: Rethinking Languages, Compilers, and Responsibility

Simon Auer

Organizer of flutter vienna meetup and CEO of marqably

Simon Auer
Open session

World Congress 2026 North America

September 24, 2026 · 15:30–16:00

Stage 7

Beyond Vibe Coding: Using CLI Tools as Your AI Counterpart in Pair Programming

Ron Veen

Java enthusiast and Special agent for Team Rockstars IT

Ron Veen