3 ms·
A "Best Practice" is "best" given a context. This means by definition "Best Practices" will tend towards "Average Practices" as the number of contexts they are
by didibus 6y ago
A "Best Practice" is "best" given a context. This means by definition "Best Practices" will tend towards "Average Practices" as the number of contexts they are used in grows to infinity.
This is what people have to realize, when you put in place "Best Practices" you're doing something that is "average".
To do something "better" than that, you need to specialize your practice for your given context. Unless you happen to have the exact same context from which the "best practice" originates from, chances are it is not optimized to your context. And even if you have the same context, time has probably gone by and more "practices" might have developed since that are even better to that context.
Like the article says, you can only optimize to your context if you understand the pros/cons of each practice, so you can customize to your needs.
I have definitely seen situations where developers push for "best practices" when the current practices are already specialized to the context, but because they are not the "best practices" from some internet blog, or famous book, the developers think the practices must not be the "best", in reality they are pushing for worse practices as they are pushing to de-optimize the practices from one context to some other context, bringing the team back to the "average". They lack the understanding and rationale to asses what is "better" or "worse" for their context, and that's why this happens, as they cannot reason about comparing their current practices against the "best practice" ones, thus simply believing in the social trends and norms over whatever the team had worked to specialize into.
Now many times, a team will have below average practices in place, and that's when putting in place some "best practices" will help, as it drives the team processes up towards the "average" or better (given how similar or not the team's context is to the best practice).
- XargonEnder 6y agoI feel like, in practice, best practice just means "skills that help me interview well", because those skills are best for improving my quality of life.