For a long time now, the term best practice has been misused in software. At an industry level, best practice has become a catchphrase for “my opinion.” When people say “I have a set of best practices,” what I hear is, “I have strong views about some things.”
If I’m being pedantic about the term best practices, I am referring to practices that are inarguably the best. That means there is no situation in which the trade-offs of that practice put you at a disadvantage; there is no better way. An example would be to always use syntax highlighting since there simply is no reason not to.
In being selective about what we call the best, the logical conclusion is that it is rare that the best thing for any market, company, or team will be the best for another.
This is seen in an excerpt from our Artium Default Practices, “For example, we likely will pair some of the time, not all of the time. And we likely will unit test some of the things, not all of the things. And oftentimes it will make sense to build and deploy a feature without doing user testing in advance because it’s cheap and easy to do so and we strongly believe it will be successful.”
So how does this impact our work?
It means we work with clients on an individual basis. We don't barge in with strong opinions and state they are undeniable. Instead, we meet clients where they're at and go on the journey with them. Our success is theirs.
We're best where there's uncertainty, novelty, or undiscovered value. This is why we don't bring in one set of practices, apply to all of our clients, and then leave. We're going to find out along the way what works together.
We're not just throwing bodies at tasks. We're matching great minds and experience to challenging problems. Artium is a collective knowledge base; someone here has encountered some form of any given problem before. Our job then is to find a unique way to address this iteration of it.
I believe in the Artium value of humbling yourself to your craft, practice, and tools.
For me, that means understanding that what worked for you once may work for you again. However, as the situation changes, so must your approach. I don't know of anything more constant than change, so our practices always evolve.
All of this leads me to believe one simple thing: The word “best” is not my preferred way of describing most practices I have come to use in my professional career.