On the face of it, who would not want to do the 'Best Practice' so that your work is well done for both your current and future needs. But, who are these 'gods' who determine these 'Best Practices'? Just maybe, I could add my two cents.
For instance, in C#.NET programming the manuals encourage breaking programs into small objects and some levels encourage you to name variables to identify their use. Yet, on the other hand they use the single character variables (okay bright one, it neither tells me its use nor is it easy to find). They also use the same names in different routines because each routine is independent (uh wait a minute, I know technically they are independent but really its hard on the brain. unique is better).
Can anyone help me write a book?