That's not special to programming. It goes for all creative problem-solving skills. More true
the more creative, more analytical the work is though.
A skilled person will clean a room in half the time, and the result will be better.
But a skilled mechanic will sometimes listen to a car-engine for 10 seconds, twist one screw,
listen to it again, and know what the problem is, whereas a clueless one might spend a day
searching for the problem.
It's rare that pay scales with performance. And it'd probably be a bad thing for society
overall if it did. It should probably differ MORE than it does though, but that would require
management to be able to actually recognize skill, which is a tricky proposition.