Video: Is TDD dead? 5: Answering Questions
Is TDD dead? 5: Answering Questions
===
What is an example of an open source project that does TDD well?
@David
common code
open source only extracts commons, libraries
only personal experiences of private apps
@Martin
takes a lot of effort to understand the code bases where these problems occur
team of 12 for a year
when you're not working on it
@Kent
JUnit project
@David
Are we scientific?
virtually impossible to true/false
it's still worth debating
@Kent
You can't repeat because too many variables
scientific mindset is still helpful
no universality
===
What could change about the way we write software that would make TDD redundant for Kent and Martin?
What could change about the way TDD is performed, to make it useful for David?
@Kent
blogpost: RIP TDD
problems that are solved
confidence
piecemeal progress
always having byte sized chunk next
overwhelmed -> spotlight
comfort
#Martin
applicability in different contexts
low stress, rapid unhurriedness
no TDD when web UI
TDD in JS
nasty language
unfamiliar language
@David
started with TDD
free regression testing
regression testing is awesome
apply this to everything
kept trying to apply it everywhere
can't use TDD for the majority of things I do
when I see others having forced it, I see bad code
good feelings from TDD
regression suite
not design driven part
@Martin
natural learning:
try it
use it
over-use it
dial back
@Kent
"Oh if I had an X, then this problem would be easy to solve"
make the problem easy, then solve the easy problem
but making a problem easy, can be hard
looking for feedback - F5
===
How do you think a lack of design experience affects TDD?
How do you think TDD works with an inexperienced developer?
@Martin
inexperienced
forces byte size pieces
forces separate interface from implementation, maybe not good design
produced self-testing codebase, can refactor
experienced
better design decisions
@David
TDD is the gateway-drug for regression code and self-testing code
enlightenment to testing
no nuance discussions
fear of shying new ppl away
@Martin
Dogmatic :-(
we need to keep repeating beginner stuff
new people are joining
@David
mutation with everyone adding their own stuff
we need to reset to the beginning principles
@Kent
reboot ok
dont wanna lose: expectations about software dev have changed
feel confident
point to my contribution
constructive collaberative
@David
ruby: fun, hapy
now taken for granted
@Martin
meaning get's lost over time
different set of problems
@Davic
accumulation of cruft
leave good ideas the fuck alone
you're making good things worse by adding to it
@Kent
build from the ground up every time
from first principles
@David
"how did people get to this?"
@Kent
In 10 years you'll not be able recognise what this turned into
@Martin
Keep repeating the principles
Mention the added things that are useful
@David
ruby is a reboot
functional is a reboot
nodejs is a reboot
rails is a reboot
success looks like being a villain
@Kent
other avenues to same goals
is it just a matter of design where we're lacking
@David
Fear of public saying "It's not working for me"
baby
self-testing
regression
feeling comfortable in making changing
@Martin
Agreement
self-testing in code
TDD is useful in some context
disagree on how many?
thoughtful
your team
find out, use, over-use