He ignores a lot of examples where best practices have simply become common knowledge, and you'd never consider doing it any other way. For example, structured programming - most languages don't even <i>provide</i> a way to jump into the middle of a code block now. Avoiding self-modifying code, unless you live in Ruby-land. Lexical scoping, which is widely considered the only sane default among language designers today, though we're still waiting for mainstream languages to catch up. Multi-character variable names that don't have to start with one particular letter (Fortran, I'm looking at you). Automatic documentation generators - thank you JavaDoc. Garbage collection. Having classes manage their own memory in languages that don't provide garbage collection.<p>Today's "best practice" <i>may</i> be tomorrow's fad - or it may be tomorrow's common knowledge. The differentiating factor is usually the ratio of actual experience to wild-eyed exuberance that its proponents have. So I'm betting that Rails is just a fad, but several of the XP practices like unit testing and standup meetings will have lasting impact.
I found the article meaningless. He says best practices are what everyone is doing, therefore the embodiment of mediocrity.<p>I find "best practices" to be a useful checklist, especially in an area new to me. If someone says it's a best practice, I take a look. Ultimately I may decide their advice is of a little value.
Nice and funny. But obviously, 'best' here refers to the best among all other approaches/practices, and not best among all those companies following the same 'best' practice.
A big part of the problem with "best practices" is that the term becomes carte blanche to justify a particular decision without understanding the reasoning behind it. It's sad that it's become a kind of seemingly-authoritative buzzword.
This is a short post mostly devoid of content, where the author argues that "Best Practices" are an oxymoron if everyone is doing them.<p>This is based on an assumption that at given point in time there isn't an ideal solution (or an approximation which is nearly indistinguishable) for a given problem.<p>I would disagree and say that while "best practices" can be a buzz word for industry consensus, there are plenty of "best practices" which are genuine best solutions.<p>This can be for a number of reasons, such as learning inertia on the part of users. You might be able to invent a "better" user interface convention but if it's unfamiliar or confusing to the majority of users used to an "inferior" convention it's not necessarily a better practice to use the newer convention.
Best out of the set of possible practices, not out of the set of practitioners.<p>State of the art sounds impressive, but it merely means the best we have at the moment. Inventive people constantly improve it.<p>"Crossing the Chasm" talks about how most people in a given industry prefer to do what everyone else is doing. Progress comes from the technology "enthusiasts" (who simply love cool new stuff) and "visionaries" (who are excited by new application of the technology to give them a x10 advantage).<p>There's also the distinction between competitive advantage and hygiene factors. For the latter, it's cheaper and more reliable to just follow the crowd than to experiment with risky new ways - save that for improving your competitive advantage.
These claims are logically looped, and for that reason are inconsistent.
What he claims, is actually "Best practice is avoid best practices". And he justifies it with claims that following these practices causes mediocrity, because everybody begin doing same thing. Well, sometimes, the best thing you may want is mediocrity in something absolutely irrelevant and of secondary importance. For sake of freeing your time for really important things.