In last 8 years, I have worked at more than 10 different IT companies and this question has always bothered me and crosses my mind every now and then.
+50% of my project managers have never coded a single line in their career.
+40% of my project managers hardly coded for a couple of years (small 4 - 5 forms Windows application or 5 - 6 pages ASP projects) before taking up project management. And they have not coded a single line of code since the last few years after taking up project management.
The remaining % (between 1 - 10) of chaps were real good with their technology skills so this question does not apply to them. They were amazingly efficient and able managers.
Now this 90% which I am talking about - these guys spend their entire day on Excel sheets, emails, charts, online meetings and instant chats.
It's the programmers who do the real work. So I do feel how on earth can these project managers (non technical mind you) be paid almost 2 to 3 times salary that of a senior developer for simply clicking the forward button on their email client software. Basically these guys are information forwarders (and no harm in that because that job is important too) but do they deserve to be paid 2 - 3 times salary of a good programmer?
Do you really think their work justifies their salary?
Also, here in India, the way to a successful career path (and more money) is to move up from being a coder to being a project manager (and no code). So even the good coders are left with little choice but to take up full time management. Is it the same in your country too? If yes then don't you think this is so wrong?
Also let me ask, don't you think it's so important for a project manager to also code say for 1 hour a day just to keep himself updated?