I will start right out that I am a believer in best practices. I know several that work 100% of the time and many that work most of the time.
One that works all of the time? Treat people with respect.
One that works almost all of time? Make work visible.
Ironically, many in the Agile community say there are no best practices and then proceed to tell you a few you have to do.
For example, in Scrum you must have cross-functional teams, do iterations and have daily stand-ups (just to name a few).