Best Practices Vs Good Practices (Ranting with Rex Black)

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.

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.
Joe Colantonio is the founder of TestGuild, an industry-leading platform for automation testing and software testing tools. With over 25 years of hands-on experience, he has worked with top enterprise companies, helped develop early test automation tools and frameworks, and runs the largest online automation testing conference, Automation Guild.
Joe is also the author of Automation Awesomeness: 260 Actionable Affirmations To Improve Your QA & Automation Testing Skills and the host of the TestGuild podcast, which he has released weekly since 2014, making it the longest-running podcast dedicated to automation testing. Over the years, he has interviewed top thought leaders in DevOps, AI-driven test automation, and software quality, shaping the conversation in the industry.
With a reach of over 400,000 across his YouTube channel, LinkedIn, email list, and other social channels, Joe’s insights impact thousands of testers and engineers worldwide.
He has worked with some of the top companies in software testing and automation, including Tricentis, Keysight, Applitools, and BrowserStack, as sponsors and partners, helping them connect with the right audience in the automation testing space.
Follow him on LinkedIn or check out more at TestGuild.com.
Related Posts
Mobile testing is the systematic process of evaluating mobile applications to ensure they function correctly, provide excellent user experience, and […]
Love it or hate it—Behavior Driven Development is still widely used. And unfortunately still miss-understood. You’ve probably heard a lot […]
ETL stands for Extraction, Transformation, and Load (ETL). How do you test it? This guide covers what you need to know to get started.
I originally wrote this post in 2012 but I still get email asking if it is still possible to use […]


