In What We Know We Don't Know, Hillel Wayne crisply summarises a handful of research findings about software development, describes how the research is carried out and reviewed and how he explores it, and contrasts those evidence-based results with the pronouncements of charismatic thought leaders. He also notes how and why this kind of research is hard in the software world.
I won't pull much from the talk because I want to encourage you to watch it. Go on, it's reasonably short, it's comprehensible for me at 1.25x, and you can skip the section on Domain-Driven Design (the talk was at DDD Europe) if that's not your bag.
Let me just give the same example that he opens with: research shows that most code reviews focus more on the first file presented to reviewers rather than the most important file in the eye of the developer. What we should learn: flag the starting and other critical files to receive more productive reviews.
You never even thought about that possibility? There's lots of things you don't know. Even the things you think you know might just be your intuition, cherry-picked anecdote, or lack of any thinking whatsoever.
I don't think Wayne uses the term specifically, but for me this talk is a call for critical thinking about our work. I read his weekly newsletter and see him apply it regularly along with oodles of insight and humour. Here's a couple of examples from the last couple of years on empirical software engineering:
What I look for in empirical software papers:
Instead of thinking of whether papers are correct or incorrect, I look for things that make me trust it more or less.
Uncomfortable Truths in Software Engineering:
Empirical research on software engineering is a trainwreck and will remain a trainwreck for the forseeable future
The average developer thinks empirical software engineering is a waste of time.
There's also a list of sources for the DDD talk.
Image: What We Know We Don't Know
Comments
Post a Comment