I'm reminded of a paper [1] that "discovered a test which divides programming sheep from non-programming goats." The claim is that there are two distinct populations of people (those who can programming and those who inherently cannot). Each population has its own variance, e.g. as the OP mentions, the best programmer in each population might be 30-40% better than a lower-tier programmer in the same population. But the average programmer in the "can program" population is a magnitude better than the average progammer in the "can't program" population. This seems to closely match what the OP is describing.
[1] http://www.eis.mdx.ac.uk/research/PhDArea/saeed/