What I don't understand is why you are trying to compare programmers with doctors and lawyers. Why not choose fields that are more closely related and let's see how the average software developer is doing vs. those working in those fields?
For example, let's say, electronics engineer - I would hazard to say that the average software developer is earning higher than the average circuit designer.
Sure, you are saying that software is pervasive in our lives and extremly important - but all software runs on some hardware, which was designed by an electronics engineer.
Engineering and science related careers have never been amongst the top paid jobs in the society we live in - and you could argue for many engineering fields that they are amongst the most important jobs in our current economy (be it construction engineers, automotive, aerospace engineering, energy production, whatever). I don't really see why programmers should earn much more than people working in these fields.
For example, let's say, electronics engineer - I would hazard to say that the average software developer is earning higher than the average circuit designer.
Sure, you are saying that software is pervasive in our lives and extremly important - but all software runs on some hardware, which was designed by an electronics engineer.
Engineering and science related careers have never been amongst the top paid jobs in the society we live in - and you could argue for many engineering fields that they are amongst the most important jobs in our current economy (be it construction engineers, automotive, aerospace engineering, energy production, whatever). I don't really see why programmers should earn much more than people working in these fields.