Jim Coplien and Bob Martin Debate TDD
alexsmail1 HN recommender · recommended in 1 month, 2014–2017
interview · intermediate · evergreen · 2014–2017 on HN
Jim Coplien and Bob Martin debate test-driven development and unit testing in an InfoQ video that grew out of a JAOO 2007 dispute. They also touch on design and architecture.
HN points to it as a fun, substantive exchange between two experienced practitioners on TDD's value.
Up next
15 mo on HNRailsConf 2014 - All the Little Things by Sandi Metz
Confreaks
15 HN recommender · 2015–2025
11 mo on HN"Testing Distributed Systems w/ Deterministic Simulation" by Will Wilson
Strange Loop Conference
12 HN recommender · 2014–2024
11 mo on HN🚀 TDD, Where Did It All Go Wrong (Ian Cooper)
DevTernity Conference
11 HN recommender · 2018–2024
11 mo on HNBret Victor - Inventing on Principle
Rui Oliveira
12 HN recommender · 2013–2025
11 mo on HNSolving Problems the Clojure Way - Rafal Dittwald
Clojure/north
10 HN recommender · 2019–2025
11 mo on HNDebugging Under Fire: Keep your Head when Systems have Lost their Mind • Bryan Cantrill • GOTO 2017
GOTO Conferences
8 HN recommender · 2018–2025
10 mo on HN"Performance Matters" by Emery Berger
Strange Loop Conference
12 HN recommender · 2019–2025
10 mo on HNA Tour of the Acme Editor
Russ Cox
11 HN recommender · 2012–2026
8 mo on HNTech Talk: Linus Torvalds on git
Google
9 HN recommender · 2007–2023
9 mo on HN"How NOT to Measure Latency" by Gil Tene
Strange Loop Conference
9 HN recommender · 2015–2026
9 mo on HNRuby Conf 12 - Boundaries by Gary Bernhardt
Confreaks
8 HN recommender · 2015–2024
9 mo on HNUsing Python to Code by Voice
Next Day Video
12 HN recommender · 2013–2025
3 comments from Hacker News
Yeah, I agree. TDD is also, you cannot write a single line of code without writing a failing unit test though. Well, I'm not a fan of that either. I mean, sometimes I like writing an acceptance test to begin with and work inwards. People sometimes interchangeably use "TDD" for "testing". Also, just because you do TDD, doesn't mean your code can be great, I've seen people assert pointless things and the unit has gotten so small that people now define them as methods in classes. Which I also think can lead to some crazy maintenance suite of tests. If you're interested, this was a fun discussion about TDD between two professionals: ▶ this video Jim Coplien and Uncle Bob.
I feel James Coplien's advice on the question is interesting: ▶ this video TLDW: "refactoring your way out" from a simple but too short-sighted design might take a ridiculous amount of work, compared what would have been necessary if you knew what a "correct" design for this problem was.
James Coplien and Bob Martin have a debate of TDD and unit testing. There is a video of it on YouTube: ▶ this video