I recall Phil Jackson talking about the Chicago Bulls with Denis Rodman. Denis Rodman was sometimes late to practices, always in trouble, and etc. And Phil Jackson was connivent with him. When asked if this permissivines with one rebellious player wouldn't have a bad influence on others, specially when you have two other more important stars (Pippen and Jordan), he answered that they knew it better. They knew one team can have only one Denis Rodman on the team. And despite being more important than him to the team, they didn't try to play the "I'M the star here, so I should have the privilegies". They knew Denis Rodman needed this kind of freedom to perform, and they needed his performance.
So, just as you need more down to earth programmers to support a superstar, you also need to everyone know they role in the team and why they need each other. A superstar that doesn't recognize the importance of those with less talent than him isn't a good one to have on your team.
A similar thing happened in football (soccer), when the Real Madrid of the early 2000s decided to let go Claude Makélélé, a defensive midfielder who was in charge of all the "grunt work". For the following 3 years Real didn't win anything, even though they had Zidane, Ronaldo, Figo and Beckham among others.
As far as the salary scale for superstars vs average programmers, it's typical that the best people are compensated better, whether it be via salary, RSUs/options, bonus or fringe benefits, but it is not typical to compensate them higher by multiples of base salary. And why should it be? As stated by others, almost none of what is required of programmers by most organizations is anything that couldn't be done by a thousand other candidates. Most of you guys may not find it pertinent to take a global view, since large enterprise representation is dwarfed on HN by the startup & 1099 constituency, but when you get to the high levels of management (C-level) it is a real thing in most companies that the folks at the top don't understand the difference between what you get when spending x amount in y places. The problem is that the technical hiring manager or product owner aren't always allowed, in those situations, to hire in the place that makes the most sense, causing further stress and inefficiency in the organization. This, then, leads to conversations like the ones that resulted in the mass outsourcing of the late 90s and early 00s. I've long held that we'd all be better off if corporations took the position that most programming skills should be roughly equally compensated for no matter where in the world the individual sits, but until this scales from <10 (startup) to >1000 (enterprise), don't expect much. I employ -- against my will -- ~50 technical folks in South India at a total salary of <$600k US.