Kiaman, I generally agree with you, but when you say that basic programming skills are just "glorified typ[ing]" I strongly disagree. Bad programmer is to good programmer as bad watchmaker is to good watchmaker. What distinguishes either kind from the general public is that they can build a working watch. That's the base prerequisite for calling yourself a watchmaker. If you're so bad that you can't build a working watch, then the best you can do is "aspiring watchmaker."
I would agree with this statement if the hypothetical "aspiring watchmaker" did not make any money because they could not produce a fully functioning watch. My hypothetical "glorified typer" fully holds programmer/developer title and compensated pursuant to their job description. They require someone who CAN build a watch to design/oversee/supervise/and in some cases, modify their work. They are useful (although overpaid) as it saves countless hours of me typing, thus my generalization.