Software Testing

Best Practices Vs Good Practices (Ranting with Rex Black)

By Test Guild
  • Share:
Join the Guild for FREE
Rant

One of my pet peeves is when folks write me every time I use the term “best practices” to lecture me about how there are no “best practices,” only “good practices.”

So I was glad to learn that Rex Black, one of the old-school testing folks I look up most feels the same way. This topic came up in my recent TestTalks interview with Rex, and the answer he gave on how to address folks who do this was brilliant, so I had to share it with you.

Think Pattern, Not Recipe

Rex often sees members of the testing community take a common phrase and somehow impart attributes to it that no one else does.

Rex offered up an awesome rebuttal to use the next time you find yourself attempting to explain best practices to people, which is: Think pattern, not a recipe.

Chocolate Cake

If I give you a recipe for chocolate cake, and you buy the exact ingredients I describe and follow the exact steps that I give you, you will produce the exact same chocolate cake that I produce with that same recipe.

That's not the way to think about a best practice. You should instead think about it as a pattern.

Examples of a Best Practice and a Pattern

Rex shared an example of a rule that one of his clients has for its delivery drivers, which is to minimize left turns. It's a best practice when doing numerous package deliveries to make a few left turns as possible, because left turns take longer, so you sit idling, right. Left turns also makes you much more likely to get into an accident as opposed to right turns.

That's a pattern.

It is a best practice to minimize left turns. It's not a recipe, because it doesn't say exactly what to do in every single situation. What it does say is when you're making choices about what to do, go this way when you can rather than that way.

This is similar to saying that the Agile Manifesto is a set of best practices, in the sense of it saying, “Do more of this and less of this,” you know, “More interaction with people, less focus on rigid processes.” There you go. That's a best practice.

Rex Rant

Rex gave an awesome rant and was able to verbalize exactly what I’ve been trying to for years.

How can some people have such an amazingly violent reaction to such an anodyne phrase? And why do they think it means “recipe” when it’s clearly not meant that way?

In the past, I've challenged people by saying, “Show me an example where somebody's using the phrase ‘best practice’ to mean that you always have to do something exactly this way,” and I've yet to find someone who is able to point to a concrete example.

Sasquatch

If I say I've definitely seen Sasquatch in my front yard, does that mean that Sasquatch exists?

I imagine you'd want me to show you an actual photo of me bear hugging Sasquatch in the front yard of my house before you'd believe that he existed and was running around my neighborhood.

{"email":"Email address invalid","url":"Website address invalid","required":"Required field missing"}

What is Behavior Driven Development (An Introduction)

Posted on 03/21/2024

Love it or hate it—Behavior Driven Development is still widely used. And unfortunately ...

What is ETL Testing Tutorial Guide

Posted on 11/29/2022

What is ETL Testing An ETL test is executed to ensure that data ...

Open Test Architecture How to Update a Test Plan Field (OTA)

Posted on 11/15/2022

I originally wrote this post in 2012 but I still get email asking ...