A good developer can negotiate a bette rate if he wants, or at the least, he'll be offered gigs at above average rates. By sticking to the exact market average according to their salary surveys, they're only able to select from the list of candidates who don't meet the above criteria. That is, the below average ones, and the occasional good one who has never been told what he's worth.
I've written about this in the past:
http://www.expatsoftware.com/articles/developers-should-lear...