An experienced programmer might appreciate most tech (I certainly do and I recognize what they brought to the table) but there also comes the time to retire some of that tech because you have something that has all the benefits of the old stuff plus new goodies that make productivity objectively better -- we're not talking some fanboyism here like "I like the syntax better!", we're talking "I can make it in 2 days as opposed to 5, plus it will have less bugs on the first deployment" (which is something that statically and strongly typed languages like Rust bring to the table).
I worked with PHP, with Java, with JS, some .NET, and a bunch of others. I wouldn't reach for them nowadays. I recognize that rewriting some systems might cost millions and I am sympathetic to the companies who can't just spend that much and are keeping their old giants alive and well. More power to them. But there are many situations where new and improved tech can be picked, yet people still refuse because of the fear of the unknown and because they became way too set in their ways.
A lot of modern tech -- Elixir, Rust, F#, BuckleScript, Nim, Zig being a few good examples -- only lacks the network effects of Java / PHP / JS and it beats them in almost every other aspect.
Inertia. Problem is always the inertia and people becoming old men in their 30s, yelling: "Back in my day <this> and <that>...!". (Hell, I've seen people being like that at 27 years old; quite sad.)
So no, languages aren't just a hammer and a saw. Some languages can only be a saw ever, some can be a lame hammer and a lame screwdriver at the same time, others can only ever be a good car to transport tools from one place to another.
What a "good developer" is, is a guy/girl who can use one or more of them in a team where each shines in their strong area.