2020 - Scientific skepticism on software craft
More context from 2025
In 2020 I was working as a consultant and also training people internally. While I was convinced of the efficiency of software craft techniques, I was surprised by the low adoption by the rest of the industry. I wanted to dig that subject further to have a more generic point of view on software craft, something that was not possible inside my bubble.
This talk is now obsolete as most of its content was recycled.
Abstract
If you open a reference book on software craftsmanship, you’ll find plenty of best practices and advice on improving development efficiency in projects. Reasonable people, drawing from their personal experience, share a set of recommendations that seem to have broad consensus: Code reviews, pair programming, automated testing, continuous deployment…
But there are also developers who haven’t “seen the light” and remain more skeptical: It’s complicated, it’s not useful, we do things differently. And then, there are those who sometimes ask uncomfortable questions like, OK, it’s better, but what does it cost, and what does it bring in return? The answers usually given are as qualitatively precise as they are quantitatively vague, making them rather unconvincing to outsiders.
If we want to bring objectivity to the analysis, we need to step back and use an appropriate tool. Here, we’ll call it zetetics, which some describe as “the art of distinguishing between what belongs to science and what belongs to belief.” So, we’ll turn to the state of scientific knowledge to try and answer questions like:
- Do we actually save money by skipping tests?
- Do we develop faster with TDD?
- How do we introduce bugs?
With a bit of luck, we’ll walk away with more questions than answers. :-)
Slides
Presented at
Bibliography
1984 - Software errors and complexity: an empirical investigationpdf
2016 - Effects of Clean Code on Understandabilitypdf
2015 - Old habits die hard: Why refactoring for understandability does not give immediate benefitspdf
2014 - Effects of Test-Driven Development: A Comparative Analysis of Empirical Studiespdf
2008 - Realizing quality improvement through test driven development: results and experiences of four industrial teamspdf
2020 - Why Research on Test-Driven Development is Inconclusive?pdf