I was watching a video by Dave Thomas (one of the authors of The Pragmatic Programmer) where he explains that the idea of best practices is misleading. He argues that best practices are contextual.

Dave uses the example of Agile, which is a sore topic for many. He talks about how selling shrinkwrapped agile is not going to work, because it is different for each company, and each team. It has to be custom fit.

It’s hard to disagree. I do think though that a lot of the practices that are talked about as being the “best,” are good practices. However, a challenge is that a lot of these practices depend upon or are meant to encourage “good mindsets.” The mindsets are far more valuable than the practice itself.

The question then becomes about how prepared an organisation or team is to shift their mindset. As you probably know, it sometimes feels like it would be easier to move the earth than some mindsets.

I encourage people to consider practices (good, bad and ugly) with a critical perspective to understand the mindset behind it. Only then is the question of relevancy capable of being answered. If the mindset that is encouraged can be achieved in another way, that could be your version of that practice.

The problem, of course, is that communication is difficult, and our ability to perceive possibilities is limited by our own perspectives. Sometimes, it takes a period of trying out a practice before we can begin to understand its potential value.

What do you think about best practices? Are there universal ones?