I've experienced the exact opposite with that, that often those with humanities specialization are the least able to think critically and most likely to inject personal biases. They often adapt to another job not because they have some edge but more because their unable to pay bills and forcing yourself to learn something is very easy when the alternative is starvation.
Further this points to the ugly truth, a college degree doesn't matter any more than your HS GPA, the important part is you have it. It serves simply as an easy way for employers to filter people out when attempting to determine who to hire. It functionally serves as an easy way to vets large swathes of people.
I've experienced this exactly. I have a philosophy degree. I floundered a bit career-wise post undergrad, self-studied for a practical entry vector into a programming job, and 8 years later have a super rewarding career as a software engineer. I felt my humanities undergrad, especially the critical thinking and writing skills I developed, have helped me advance much more quickly.
If I were to change anything, I would have liked to do a CS minor.
I mean, what don't you like about JS? Is it the syntax or is it the environment? The code base? The framework? Maybe web dev is not for you? Maybe you are asked to do thing you personally disagree with (ex: ads). Language rarely was the main thing that defined the project, though there are correlations: if you are doing JS, you are probably doing web dev, with a higher chance of front-end work. But chances are that a NodeJS back-end and one written in, say, Elixir, won't feel much different after the honeymoon is passed.
If you want something different to JS, why not try good old C instead of niche languages? It has a significant job market, you will learn about memory management, and get your foot into embedded, high performance, and system programming, far from the world of JS. These skills will translate into the other (niche or not) languages you may use next. Even in high level languages, having an idea of how that works on a lower level is a good thing.
This is very, very far from my experience, having worked extensively with both of these particular examples.
At my current job I deep dive into a lot of years old, kinda sketchy Elixir code, and it's almost always less effort to learn/fix something than I've found in other languages, especially other dynamic languages. Except when macros are overused.
Thinking of yourselves as someone who is a writer of a certain programming language is self constarining and missing the point.
I'm not sure becoming a high paying/good software engineer are necessarily relevant to the stated goals of the OP's question. There can be inherent reward in working with a set of less popular, well crafted tools. Yes you might grow faster as a professional by working with a group of industry best JS programmers, but working with a small team building in Elixir and moving fast without ever hitting a NaN can be a pretty rewarding experience.
Don’t think of it this way. Learning new tools is almost never a waste of time, you just don’t know when you’ll need the lessons learned next. But you will.
Most countries I see, the problem is one of the two. Non-English industry and one doesn't speak the native language. Missing a desirable education + experience combo (e.g. any masters or PhD, STEM bachelor, software dev with 3+ YoE).
I'd imagine most individuals looking here would hit one of the requirements on the last, and English tends to be the language spoken in software dev in most of the world (or at least, the ability to). Several may be willing to accommodate non-native language speakers on several other fields, too.
At the very least, I know much of Europe is bending over backwards for skilled workers (backlash from trying to cheapen everything and from the US taking EU's skilled workers, I guess) and the US is Canada's neighbor.
That said, Canadian politics and crony capitalism are a grind sometimes, but looking over the fence it’s not totally obvious that other systems aren’t trading one set of intractable problems for another.
What are those, in your experience? The BEAM platform is certainly better for concurrent work where you might be holding open something like a web socket. But other stuff...? I'm a pretty happy Erlang programmer and feel like I 'get' the functional programming aspect of things, but to me ActiveRecord just feels like such a great fit for DB work in that it makes the simple things really easy and intuitive, lets you do some more complex stuff, and gets out of your way if you just want to go to SQL. I don't have too much experience with Ecto. It feels like it "does the job", but is maybe not quite so quick and intuitive for basic/simple stuff like AR.
Americans shouldn't be so fast to discount the idea of each other just because they are from the other end of their political spectrum. US politics would improve if both sides avoided that.