Do you understand that the world is not that simple? The only artificial shortage in play, is created by those self same companies - or unemployment in the US particularly among 40+ programmers would be 0%.
If you care about the long term future of the human race you would be fighting both ageism and indentured servitude.
If you know of any great 40+ programmers please send them my way.
I think you are ascribing a conspiracy with something that can be much more easily explained. 40+ y/o programmers first started learning programming 20+ years ago when programming was more low level in general. Furthermore their skills were honed on broken processes and outdated technology. And, if a programmer has been in the industry for 20+ years and they are good, they've most likely made enough money to retire, or are in a management position (and expecting a management position). Lastly, there were a lot less programmers entering the field 20+ years ago than there are today (I'm guessing on this one admittedly).
When you take all of these factors together, how many job-seeking unemployed 40+ programmers are really out there? My guess is that if they are job-seeking and unemployed, they should be looking inwards for why. It's probably a problem that they can solve themselves. And of course it doesn't have to be skill based issues - most people don't live in SF which is where a lot of programmer hiring is happening now. By 40+ you have a family with roots that people don't want to uproot.
If you know of any good programmers that are willing to work as an engineer (not manager) in SF then please please PLEASE send them my way.
40+ y/o programmers first started learning programming 20+ years ago when programming was more low level in general. Furthermore their skills were honed on broken processes and outdated technology
When you have been around technology for a little while you will see that the changes over time are superficial. There's actually not much you can do with a fancy Angular app now, that you couldn't do with an IBM 3270 terminal 40 years ago. You have a form to enter records into a database, or a report to extract that data in a nicely formatted way. Or Facebook, or Amazon, or whatever, to an experienced programmer these are just forms and reports. They differ from earlier apps only in the most trivial ways, the engineering under them hasn't changed. These old guys built things like banking systems, airline booking systems, that have been running for decades, and will be running for decades more. They know 100x more than any "scrum master" or whatever is in fashion now.
Sadly attitudes like you demonstrate, are common. Hence, rampant ageism and the drive to hire cheap 20-somethings.
Fundamentally programming is all the same: it's pushing around some 1s and 0s. But you'd have to be crazy to think the people in this industry haven't been standing on each other's shoulders and constantly refining existing ideas and developing new ones.
If anything, the pace of innovation has been accelerating.
This kind of "I've been coding banking systems that have been around for 20 years what do you know you little snot" faux-elitism is the exact attitude that makes certain kinds of developers absolutely horrible to work with. I hope you recognize that.
Not really, it's the voice of experience. For example, I did Versant in the 90s, and the reasons we ripped it out and went back to Oracle, still apply when someone says "let's use MongoDB!". But too many people in the industry lose out if we stop reinventing the wheel and start REAL innovation.
If you care about the long term future of the human race you would be fighting both ageism and indentured servitude.