What We Know We Don't Know: Introduction to Empirical Software Engineering
Static or Dynamic Types? Does TDD actually catch bugs? Just how bad is copy-pasting, anyway? There are a lot of strong opinions out there but very few strong facts. We all have an intuition for these things, and often that gets us far enough. But our intuition can be misguided or flat-out wrong.
When we want to know things for certain, we look at the evidence. Empirical Software Engineering is the study of what actually works in programming. Instead of trusting our instincts we collect data, run studies, and peer-review our results. This talk is all about how we empirically find the facts in software, some of the challenges we face, and how critically evaluate software claims for yourself.
Who should attend this talk: People interested in improving their practices. People interested in how we determine "best practices".
Academic level: Beginner for academics. Intermediate for industry.
What is the take away in this talk: The basics of how to read academic research. How to evaluate claims. Awareness of how little we actually know.