This post uses a terrible example. His hidden variable is programmer skill, and he assumes that high skill programmers prefer to work at agile companies over waterfall companies. Therefore, he claims, agile is not really more productive than waterfall.
But that's silly; if using an agile methodology is what attracted the high skill programmers, that's why you're more productive! Changes that attract high skill programmers - even if that's all they do - are the most productivity-enhancing changes you can make.
http://en.wikipedia.org/wiki/Self-selection
which leads to some relevant literature:
http://www.allacademic.com/meta/p362803_index.html