TDD & DDD from the Ground Up • Christopher Simon • GOTO 2025

TDD & DDD from the Ground Up • Christopher Simon • GOTO 2025

🎙 Christopher Simon 👥 1.1M 📅 April 17, 2026 ⏱ 46 min 👁 4K 📄 tutorial 🧭 2026-08-02
Available in: English (current) Français

Keywords

TDDDDDrefactoringubiquitous languageaggregates

Summary

Christopher Simon presents a live coding demonstration on applying Test-Driven Development (TDD) and Domain-Driven Design (DDD) from the ground up. He starts with a simple university registration system and uses TDD to incrementally build features. As business rules become more complex (e.g., course capacity), he introduces DDD tactical patterns like repositories, aggregates, and domain services. He emphasizes the importance of refactoring and using the ubiquitous language to align code with business terminology. The talk includes a demonstration of Contextive, a tool for managing a ubiquitous language glossary. The code is available in Java and C#. The speaker shows how TDD and DDD facilitate major model changes, making the codebase more maintainable.

111 words

Critical Evaluation

The talk provides a practical, hands-on introduction to TDD and DDD, demonstrating how they can be combined to manage complexity. The live coding format is effective, showing step-by-step development with tests driving the design. The speaker’s emphasis on small, incremental steps and refactoring is pedagogically sound. The introduction of DDD patterns as needed, rather than upfront, addresses a common concern about DDD’s applicability to simple projects. The use of a concrete example (university enrollment) makes the concepts accessible. The speaker’s credibility is supported by his experience as a coach and consultant. The code is available on GitHub, allowing viewers to follow along. The talk also introduces Contextive, a tool for managing ubiquitous language, which adds value. However, the talk is not a rigorous scientific study; it is a demonstration of best practices based on the speaker’s experience. The claims about maintainability and ease of change are illustrated but not empirically validated. The talk could benefit from more discussion of potential drawbacks or alternative approaches. Overall, the content is valuable for practitioners seeking to improve their software design skills.

178 words

Title / Content Match

The title accurately reflects the content: the speaker demonstrates TDD and DDD from scratch, building up a simple system and introducing DDD patterns as complexity emerges.

Quality & Reliability

8/10

The talk is a live coding demonstration by an experienced coach, showing practical application of TDD and DDD. The approach is pragmatic and well-illustrated with a concrete example. The speaker acknowledges different opinions on TDD and does not present it as the only way. The code is available in a public repository, and the talk includes references to tools like Contextive. However, the talk is not a formal scientific study and relies on anecdotal evidence and personal experience.

Chapters

Cited Sources

Concurring Sources

Dissenting Sources

External References

Contribution & Novelties

The talk offers a practical, incremental approach to introducing DDD patterns only when complexity demands it, using TDD to guide the process. It demonstrates how refactoring driven by tests can naturally lead to DDD tactical patterns. The introduction of Contextive as a tool for managing ubiquitous language is a novel contribution.

Pour aller plus loin :

95 words

Radar Profile

The radar profile shows high scores in quality of information and reliability, reflecting the speaker's expertise and practical demonstration. The quantity of information is moderate, as the talk focuses on a single example. The technical level is high, suitable for experienced developers.

Reliability 8/10