Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
[flagged] Stop Saying Best Practice (wking.dev)
30 points by microflash on Nov 6, 2023 | hide | past | favorite | 31 comments


I was once in a role in which I was responsible for writing/maintaining a library of “best” practices for the product I worked with.

The “stop saying best” conversation is one that came up periodically, and for a time, I was very against using the word “best”. There is rarely a single right or best answer to any given problem, and I wanted people to understand this nuance. I didn’t want people to blindly follow the advice because it says “best” in the title.

But over time, I changed my views. “Best Practices” is a label for guidance that tries to keep people on the rails. When people want to know what to avoid or what they should definitely do, they search for “<Product> Best Practices”. It’s a category of information as much as anything else.

Calling these good practices, or implementation considerations, or some other label that tries to signal the nuance of the imperfect guidance or the impossibility of defining “best” just makes it hard to find the content.

People are smart and understand that “best” can’t be taken at face value. The engineer in me wanted to hammer this point home by making the content label reflect this. But this doesn’t really help much, and makes it less likely for people to find and read the content, which is a net negative. And the people who will blindly follow advice will keep doing so regardless of the title.


Guidelines is the correct word.


I think guideline is a good word, and I’ve used it to describe/summarize the purpose of the “best practice” content I’ve written. But it’s not always a good top level category.

This will depend on the product and the space used to publish the content. I worked on content that was published to a developer portal, which also had an integrated community, and this community had published guidelines for participating.

In terms of content discoverability/SEO, guidelines is often overloaded.

I started to look at this content as a direct extension of the overall product. And when thinking about naming things, it often most effective to meet users where they are. The technically correct label on a button is often not the label that actually resonates with users. Same goes for content, IMO (within reason).

I think most of this is solved by a summary/abstract describing the content and what the user should take from it.


Unfortunately, "guidelines" can also be weaponized as something that's optional, something subject to exceptions, leading to so many exceptions that the guidelines themselves are forgotten, and eventually outright ignored.

Nevertheless, this is the term I've been using lately, mostly with a statement of guideline followed by its benefits or reasoning behind it. It is gentler and inoffensive to those who have tender sensibilities, thus enabling a productive embracement of the guidelines, a useful critic on them or an eventually better guideline, instead of inflamed egos inciting flamewars.


Best practice is not using that font. That g is killing me.


I thought some CSS was cutting off the descenders, but no, it's a conscious choice. (Although it sounds from the font copy that you can get regular g's and u's by enabling an OTF alt style...?)

https://www.fontspring.com/fonts/adam-ladd/lufga


It's been neutered. Poor "g".


The g is Kagi’s logo. It made me think it’s a Kagi blog, but they’re apparently not associated, it’s just a free font called Lufga. Font was released in 2020, Kagi logo in 2021. It’s weird, Kagi branding leans quite heavily on that lowercase g. (They do, though, have the wisdom to not use it in body text.)


That is all I could think about while skimming the article.


Reader mode to the rescue


Replace “best” with “useful”. It’s closer to the truth, and it’s more productive to debate how and when something can be useful rather than treat it like some kind of ranking or competition.


To sell them to management I just call them time wasting prevention measures.


About ten or more years ago in corp world I remember a trend to start adopting the term "good practice" rather than "best practice". I think this was a reflection of the idea that "best practice" was often a bad fit and/or unachievable and was too often thrown out as a reason for doing something without a more thorough analysis. "Good practice" reflected diligence, progressive maturity, fit for the org's overall capabilities, and an achievable goal. It's like that idea that most companies are aiming to do their core business, and it's not their mission to have a literal state of the art IT or compliance program. They need a passing or better-than-passing grade in these areas, not an A++ grade. Sometimes stopping at maturity level 3 is appropriate for the time being.


Everything that isn't "best practice" is an "anti-pattern" these days it seems. Even saying best practice is now an anti pattern. I say we move forward to the next iteration - apathetic approval - i.e. "That gets my AA"


"Best practice is an anti-pattern" considered harmful


your comment gets my A2 in the agile daily AA meeting. /s


Industry Standard Practice is the term I prefer to use, because it also helps steer the conversation towards the purpose of those practices and what outcomes or improvements we want.


This is the followup to "data-driven decisions". Are there managers who will say "we don't do data-driven decisions"?


Best practice is what I do; everyone else is legacy.


Best practice is until it isn’t. This is why we should prioritize innovation over process.


In practice, that line of thinking is going to result in not bothering to use the current best practice.

Sure, be open to something better coming along. But while you're waiting, use the best we have now.


I feel like I hear "best practice" used in one of two ways:

- By well meaning people describing that they're using a tool or practice because it's a community standard

- By juniors using it as a weapon

An example of the second is when people insist on DRYing up a class that is only superficially similar to something that already exists, but that is virtually certain to diverge over time given our business model. Or addressing tech debt without considering what tech debt is high-impact, and focusing on efforts that don't make much of a dent in day-to-day operations.

I don't really mind the first; only the second.


The problem with "best practice" is that what's best practice is so contextual to a particular company, team, stack, etc... Every customization makes the relativity of "best" less and less relevant. The problem with "standard" is that there are very few rigid and obvious standards in this industry that anyone can carve out decision matrices for.

Ideally, we'd proliferate some of these posts that talk about good patterns, the context they matter in, and what kind of tradeoffs they result in.


People don't do a practice for one reason, it is always a tradeoff between those categories. Saying it's a "community pattern" or something is just confusing, and ignores the bigger picture.

I don't like "best practice" either, because it implies a one-size-fits-all, fixed forever, no innovation approach. How about "this is how we are doing it now, it is really good because of X, but has weakness/limitation Y?"


Best practices are not actually the best practice in many situations. Best practices by their nature are legible and acceptable in a broad variety of contexts. What are the chances that in your situation, the legible, broadly acceptable practice is actually going to be optimal?


I dislike immensely the use of the 'Buzz Word du Jour'. It smacks of pure laziness.

It reminds me of the time somebody suggested always replacing the words 'user-friendly' with the words 'lemon-scented' because those words would be just as meaningless anyway.


good practice.

"best practice" implies there's bo room for improvement. let's face it there's plenty of room to improve software development


I concur. In one of my previous teams we told people to avoid using "best practices" and replace it with "good practices" instead. It may sound like some semantic nitpicking, but I've seen far too many cases of target fixation on "best practices" disregarding the actual problem people were trying to solve.


Well, at least the 1 sentence per paragraph makes it easy to spot "articles" born on LinkedIn.


best practice is about collective liability. when following best practice, a failure is all of our fault. otherwise you own that failure alone. there’s room for both.


Why was this flagged?




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: