More on “Best” Practices
I posted a link to James Bach’s great rant on best practices a while back. Here’s a reiteration of the same thought from Jason Yip.
Okay everyone … all together now …. and this time with feeling …
There is no such thing as a best practice for all contexts.
on August 11th, 2006 at 8:50 pm
Thank god someone else is skeptical about xp/agile. I’ve been programming for half my life in a number of different languages, and i fancy I’m quite good at it. I even fancy my resume reflects this. *Anyhow*, i fell into the trap of getting in an argument with my company’s resident agile zealot a few hours ago. He was trying to argue that since I wasnt willingly pairing 8 hours a day that I was buckign recognized industry best practices, and shouldnt be allowed to check in code or work. He’s just one fucking nut, and he has no authority to make such a decision, but i’m just taken aback. They dont just want people to agree with them, they want everyone who disagrees to go away. I’m stunned and frightened. I’ve promised myself never to do anything but nod and listen when he talks from now on lest i get another crazy-ass tongue lashing.
on August 12th, 2006 at 9:19 am
I’m glad you found pliantalliance.org. Sounds like it was just in time before you went completely insane. Unfortunately people like your company’s agile zealot are found all over the place and they are the reason pliantalliance.org exists. It is extremely frustrating to work with inflexible people and it really is not good for the industry.
On the subject of ‘recognized industry best practices’ - in order to really declare something an industry best practice it has to be _measureably_ proven to improve the productivity of the people involved. Unfortunately since people change, and presumably get better over time, there is no way to tell whether a ‘pairing success’ was due to the pairing or due to the fact that the pair of developers is now older, more mature, more experienced and smarter than they were on the last project where they didn’t pair. There is no way to have a control group and scientificly prove thar pairing (or any other technique) improves the quality of the software development.
Having said that, if people think pairing improves their team, then I recommend they do it. That’s the whole point of pliant. But don’t use the excuse of ‘recognized industry best practice’ to justify implementation of the technique. People who use ‘recognized industry best practice’ are just using it as a way to get out of doing their job.