The Great Pyramid of Agile: This is some great commentary in an unlikely place on programming methodologies and why they generally don’t work and are just like so many other fads.
And therein lies the problem: most developers are not good. By the very definition of the word “good,” most people are average, below average, or just plain suck. There’s a word to describe products designed for the masses that work only for some: defective.
Good people can build good software no matter what methodology they use.
To be honest, I’ve never really bought into any formal methodology. The closest I came is is some Pair Programming out of Extreme Programming. I quite enjoyed it and I can see how it improves final code quality, but it can be a problem because it automatically and by definition cuts surface productivity by 50%.
I agree with the author: you need good, experienced people, and good users who know what they want and are engaged in the process. If that’s a methodology, then sign me up.