Are you suggesting one should pay more because his living expense is higher than the other?
You should pay for how much is being contributed.
The only thing that should lower the pay is developer's own satisfaction. In other words, one would pay more for stuff others don't want to do or incapable of doing.
Well, this simply isn't how it works in capitalism. Garbage truck workers also contribute a lot to society (wait until they go on strike for a month). However, the job is paid badly, since it requires very little education, so almost anyone can do the job.
If you actually take the word "contribute" to a better degree, if a work can be done by anyone even though the society needs it, it's not much of a contribution.
You should pay for how much is being contributed.
The only thing that should lower the pay is developer's own satisfaction. In other words, one would pay more for stuff others don't want to do or incapable of doing.