I have an open source project I want to start in this upcoming year, and have been questioning which back end language I should choose. I currently work with Node.js but have been wondering what its future will hold. I want to stay relevant, if the job market shifts. I actually have years of experience with Java and have wondered if moving that route would be a good idea. Or would Ruby be the route, where I should go?
Jon
ClojureScript Developer.
Any of the JVM languages should be great for backend. Kotlin, Scala, Clojure, Java, Groovy or even Jruby and Jython (which are just Ruby and Python on the JVM) If you're a JS developer, Nashorn will allow you to run JavaScript on the JVM.
Scala would be a great option if you want something that's already mainstream but not Java or alternatively Kotlin is another great option, although not as in demand yet.
JavaScript will be the king for next decade
Why dude??
Some Top Companies
Wild guessing, I can't see the future:
Who knows, maybe WASM will eventually overtake Javascript, and Node will die along with it...
Note that job opportunities aren't only determined by how popular the language is. It's also about how many people have the necessary skills. People still earn good money with Cobol because no one knows it (or wants to do it).
So it's even harder to predict than just language popularity, which is already hard for 10 years.
If you just want good job security, don't follow my predictions, just learn something mainstream like Node, Python, Java or C++. They'll be around for the foreseeable future, even if they lose a little market share.
I'm a front-end developer, not a back-end one. As I see parallel programming is a big word in the next years due to the rising of multi-cores and GPUs. We need languages for that, designed for concurrency and parallelism. Node.js is a small change on a single core but being more concurrent. There are more to be done. I see some languages shining:
Personally I would add Clojure too. But I guess the majority still have biases on Lisp family languages so it's less likely to be mainstream. Anyway this is just some advice from a front-end guy.