James Bach, a friend of mine and scourge of fuzzy thinking in the software testing community, once said that the minimal requirement for a best practice is twofold. First, it must be demonstrably better than any alternative practices. And second, it must actually be practiced by some set of people.
A lot of ‘best practices’ fall at both hurdles. Someone asserts their quality, but provides no proof beyond a few anecdotes. To be demonstrably better, a practice must have been tested against the alternatives, shown to deliver results that are measurably superior in some way.
And as for being practiced… Too many ‘best practices’ are defined in abstract by some consultancy, or extrapolated from a single success into assumed generality. Look at the teams which now claim to be following them, and you find a huge range of variation.
People are doing widely different things, yet giving them the same label. How does that help us identify what we should do? This is ‘best practice’ as magic incantation – chant the right words while you do whatever you like – rather than as actionable advice.
It’s not the variation that’s bad.
Variation arises because we all operate in different contexts. Our organisational goals and cultures are different. Our teams have different capabilities. We target different markets. We sell different products. Of course we will need to manage ourselves differently, do our projects differently, design our sites differently.
Good practices arise when we fit what we do to our context. We think about what is going on around us and respond in an appropriate way.
But to call out one of those practices as ‘best’ is meaningless.
And to bundle up the whole set of disparate practices and label them as ‘best’ is rarely helpful. You end up with something so vague, so generic, that it gives little practical guidance on how to act.
So we’re left with ‘best practice’ as a sales tool, as a way for some group of self-proclaimed experts (be it a consultancy, or an industry body, or a professional association) to create work for itself. Let’s face it, that’s what an awful lot of best practice is about.
But why do we buy it? Why do practitioners pay out for the certifications, the process definitions, the books and other paraphernalia of ‘best practice’? Why do organisations accrue so many of them?
I guess it’s partly laziness. It’s easier to filter CVs based on certifications than to try to interview people to understand what real skills they have, easier to use a standard process than to try to craft a fresh approach for each project.
(Or at least, it’s easier initially. Things get harder when people lack the skills they need, or when projects use approaches that are ill-matched to the problems they’re addressing. But that’s later. ’Best practice’ makes it easier for us right now – it helps us defer pain. We like doing that.)
But I think the real reason ‘best practice’ has such a hold on us is herding.
We live in a pretty uncertain world. We’re still working out how to make things work, what’s possible with the technologies that keep coming at us, how customers will respond to those technologies, and so on. So there’s a big chance we’ll get things wrong. We need to protect ourselves from failure.
True “best practice” would provide such protection. It would tell us how to proceed so as to maximise our chances of success – how to assess our context, how to identify practices that will work in this context, how to execute those practices.
But often we haven’t yet learned what that best practice is. So we resort to ‘herd practice’.
Herding is a proven protection mechanism. Animals group together in large herds because there’s safety in numbers. Perhaps the herd can scare off predators. Perhaps it can confuse them, make it difficult for them to pick off any one animal.
At the very least, the herd provides targets. There’s a strong chance that the predator will grab someone other than me.
And the predators we’re defending against? Our bosses. Senior executives. If we’re in an agency or consultancy, our clients.
No matter how badly we do, if we can suggest that thousands of other professionals would have done exactly the same in our situation, then we’re safe. No one can blame us for the failure. We were just unlucky.
Of course, we can’t admit to using ‘herd practice’. That’s not what those predators want to hear. So we’ve reframed it as ‘best practice’.
But that’s not because it’s demonstrably better than anything else. It’s because we don’t know what will really work.