I have always studied for one career path, and a backup. The thought about the backup was that if I couldn’t get what I wanted most, I would still have something I enjoyed. So I keep up on C but specialize in Go, which was a bit risky 10 years ago.
Another tip is that I have chosen areas that I like, but that are also somewhat challenging. For example, when I started out the first thing I did was learn assembly language because I knew it scared other programmers. Because I didn’t have a degree, I wanted to choose something that would make me irresistible to hire without a degree.
Finally, I thought for myself. When Microsoft called to hire me 25 years ago their own people were fleeing like rats from a sinking ship, because it appeared from the press at the time that Microsoft was losing the Internet wars. My own coworkers were selling their stock like crazy when I joined, and they said the good all days were gone. When I left four years later, my stock options had appreciated 1300%. It wasn’t that I was blindly supporting Microsoft, it was that I chose to believe my own eyes as opposed to what people who had nothing to do with the company were reporting about it.
When I left Microsoft it was during the dot com crash. I bought a small company that provided a service to eBay users and it made in the two digit millions over the next 20 years. My former friends and Microsoft were polite but uncomprehending when I did it, because there just wasn’t any concept of charging for websites at the time. I risk a small part of my retirement fund to buy the company, but not enough that it would’ve hurt the family drastically if I failed. Measured risk.
Modern market seems to ask from programmers something other than programming. Peter Norvig in the interview to Lex Fridman mentioned that today software is made of building blocks from Internet, not designed from requirements as it used to. For some reasons companies prefer to endlessly lose in dependencies wars rather than have good arguments for why something is developed and something is taken from outside.
The OP problem is rather pervasive, there are some pretty good specialists who can't find a position in months and years because market requirements seems to be rather odd. People who obviously can program and have experience solving problems for business find themselves expected to know technologies du jour when those could be some questionable rehashes of ideas of previous years.
> if you want to get paid what programmers get paid these days
The problem is today's programmers are paid for knowing - preferably early - the hot technologies instead of analyzing and solving the problems with good tools. If a person has enough experience, he may understandably question the kind of a hamster race, so these modern technologies look poor for him.
Also, I chose some hot technologies that I could tolerate because I understood that’s just where it is. I also learned algorithms on my own and understood when to apply them. If the market asked for hot technologies, you shouldn’t have to adapt. Otherwise you should accept a lower paying job.
Yes, and that's the problem for programmers - those who'd prefer to solve problems better in the long run, which costs more in the short run.
In other words, there are programmers, who don't see a point in learning something which isn't really novel and isn't really progressive, but which is required to get a job. Some go for lower salaries, those are sometimes much lower - that's why people with high salaries e.g. from FAANG can be seen as delusional about their actual skills when compared with someone 1/5 of their salaries and stronger design abilities.
The problem - and the associated question - is what to do in the long-irrational market. One answer is known :) but it's not a particularly good one. Hope there are better ones -
> I chose some hot technologies that I could tolerate because I understood that’s just where it is
Sometimes market wants more than you could tolerate - emphasis on the last word.
Ever since then, even after getting a job as a program manager at Microsoft in the mid-1990s, I have continued until this day to assume that I would be fired and would have to find another job. Which means that I have studied every day for almost 40 years because I knew someday I would get old and less easy to hire. For the last two decades, I ran an extremely lucrative business, yet continue to keep my skills up.
But I haven’t heard from you is that you have tried to adjust to the market. The simple fact is, if you want to get paid what programmers get paid these days, you need to know what programmers know these days. After all, you made a good living in the 1970s because you had a special set of skills for that era. The easiest thing for you to learn at this point would be database backed web development, perhaps in python or (my favorite), Go. You could learn what you need to learn part time in about a year.