Mirjam Aulbach
Treat yourself - A tale about dog training and test-driven development
#1about 3 minutes
Connecting dog training principles to software testing
The speaker's background as a dog trainer provides a unique perspective on the principles behind test-driven development.
#2about 6 minutes
Applying positive reinforcement and small steps in training
Effective dog training focuses on reinforcing desired behaviors in small, achievable steps, similar to writing user stories and iterating.
#3about 3 minutes
Understanding the red-green-refactor cycle of TDD
TDD is a programmer-driven technique that follows a red-green-refactor cycle, writing a failing test before writing any implementation code.
#4about 4 minutes
How TDD builds a strong foundation of unit tests
TDD primarily generates fast and reliable unit tests, forming the stable base of the testing pyramid essential for agile development.
#5about 6 minutes
Building a dog training simulator with TDD
A practical coding example begins by writing the first failing tests to initialize a `Dog` class and assign it a name in JavaScript.
#6about 7 minutes
Using TDD to implement logic and catch bugs early
The TDD cycle helps catch a logical bug early when implementing rewards, demonstrating its value in preventing errors from reaching users.
#7about 4 minutes
Refactoring implementation and test code with confidence
With a suite of passing tests in place, the implementation and test code can be safely refactored to be more maintainable and less repetitive.
#8about 6 minutes
Simulating the learning process with a counter
A counter is added to track rewarded behaviors, allowing the dog to "learn" a command after a set number of successful repetitions.
#9about 4 minutes
Adopting TDD as a design tool, not just a testing method
TDD should be viewed as a code design strategy that promotes focus and clean architecture, but it's important to apply it pragmatically rather than dogmatically.
Related jobs
Jobs that call for the skills explored in this talk.
Matching moments
09:31 MIN
Exploring the key benefits of adopting TDD
Breaking the Bug Cycle: TDD for the Win
04:55 MIN
Introducing the core principles of test-driven development
Breaking the Bug Cycle: TDD for the Win
1:28:47 MIN
Recap and practical advice for testing applications
Test Driven Development with JavaScript
34:50 MIN
Live coding a Tic-Tac-Toe game using TDD
Yes, You Need to Unit Test your JavaScript. Here's How.
18:22 MIN
Building a sustainable culture of clean code
Breaking the Bug Cycle: TDD for the Win
08:37 MIN
Understanding the Test-Driven Development workflow
Yes, You Need to Unit Test your JavaScript. Here's How.
20:41 MIN
Applying the red-green-refactor TDD cycle
Yes, You Need to Unit Test your JavaScript. Here's How.
21:03 MIN
The critical role of test-driven development with AI
Vibe coding sucks! Long life to vibe coding: Hardening Applications for Production with GenAI
Featured Partners
Related Videos
Breaking the Bug Cycle: TDD for the Win
Nadeen Hussein
Test Driven Development with JavaScript
Sascha Depold & Parinaz Roghany
How Unit Testing Saved My Career
Annelore Egger
Write tests you love, not hate
Jens Happe
Test-Driven Development: It's easier than you think!
Eric Deandrea
How to TDD in legacy code
Gil Zilberfeld
How not to test
Golo Roden
Why you must use TDD now!
Alex Banul
From learning to earning
Jobs that call for the skills explored in this talk.

Test System and Release Engineer (m/w/d)
AKDB Anstalt für kommunale Datenverarbeitung in Bayern
München, Germany
Intermediate
Senior
JavaScript
Automated Testing

Software Tester (f/m/d)
Power Plus Communications
Mannheim, Germany
Intermediate
Senior
Python
Unit Testing
Automated Testing

Backend Engineer (m/w/d)
fulfillmenttools
Köln, Germany
€35-65K
Intermediate
TypeScript
Agile Methodologies
Google Cloud Platform

Tech Lead (m/f/d) - Berlin
Patronus Group
Berlin, Germany
Senior
Kotlin
Android
Angular
Spring Boot
Amazon Web Services (AWS)

Lead Fullstack Engineer AI
Hubert Burda Media
München, Germany
€80-95K
Intermediate
React
Python
Vue.js
Langchain
+1

SENIOR SOFTWARE TEST MANAGER (M/W/D)
Wilken GmbH
Ulm, Germany
Intermediate
Java
JIRA
Selenium
Unit Testing
Automated Testing

Senior Machine Learning Engineer (f/m/d)
MARKT-PILOT GmbH
Stuttgart, Germany
Remote
€75-90K
Senior
Python
Docker
Machine Learning

(Senior) Product Owner (w/m/d)
aedifion GmbH
Köln, Germany
€65-78K
Senior
Cloud Architecture
Agile Methodologies
Software Architecture

Senior AI Software Developer & Mentor
Dynatrace
Linz, Austria
Senior
Java
TypeScript
AI Frameworks
Agile Methodologies