3 ms·
Java is still the largest and most in use server side language at 39%. It is followed by C# at 32%. After that, you have Go at 9%, Kotlin (also a JVM Lang) at
by didibus 7y ago
Java is still the largest and most in use server side language at 39%. It is followed by C# at 32%.
After that, you have Go at 9%, Kotlin (also a JVM Lang) at 6.6% and Scala (also a JVM Lang) at 4%.
Finally, you get Elixir and Clojure both at 1.5%
Source: https://insights.stackoverflow.com/survey/2019 https://insights.stackoverflow.com/survey/2019
So yes, I think learning Java and the JVM ecosystem is a good investment, considering Java dominates, and if you tally up JVM langs you get something like 51% of professional developers using a JVM based language for work.
- jimmaswell 7y agoThis up-to-date one seems to be putting PHP in a large lead with C# then Java following: https://w3techs.com/technologies/overview/programming_language https://w3techs.com/technologies/overview/programming_langua... We've drifted from just compiled languages here, but the most important server-side language to know is probably PHP. Personally I've really enjoyed working with Drupal.
- gentleman11 7y agoI always thought php was just a templating language. Any recommended books or resources?
- didibus 7y agoSorry, I assumed parent meant backend and web services, like REST, GraphQL or RPC APIs, and not server side HTML rendering, that's why I excluded certain languages like PHP. I also skipped over interpreted languages like Python and Ruby since they mentioned compiled. Also, that doesn't look like a great metric, since it's just the number of website using a particular technology. That's going to be massively skewed by prefab solutions like WordPress and all. I liked that the StackOverFlow survey asked people what language they used professionally. I feel that's much more relevant.
- jimmaswell 7y agoPHP is used for REST and all that just fine. Why are you excluding it from "backend and web services"?
- didibus 7y agoWell, in all honesty, I've stopped using PHP at v5, when it was all running as CGI scripts. So I'm not sure I'm doing it justice since I'm pretty outdated on its development. I've never seen PHP being used for those usages. So I probably made an assumption here that it isn't, or rarely is. All the languages I listed generally run their own server, and can handle the full request, down to its connection. While I remember PHP only managing the payloads from an existing server, running as an embedded script which the server delegated too on the last step for final rendering of the response. So for example, it couldn't manage any type of long running in-memory process or anything like that. And it didn't have direct access to IO, as that's all managed by the containing server. Things like that, which not all REST APIs would need, but is generally something I'd expect to be able to do for more generic backend work. Don't know if there are now ways to do all this.
- gentleman11 7y agoAdoption rates matter too. I learned angularjs when it was widely used, but only a couple of years later the world has moved on to angularN, react, and Vue
- fulafel 7y agoIt can be a good investment if you look at your programming career in economic terms. But the Java culture is pretty uncreative and rife with overengineered enterprise stuff. If you can stay with Clojure, Scala, etc, then it's better. (I'm not convinced it's long term profitable to work on boring platforms either, but of course looking for fun things is more risky)
- pjmlp 7y agoI don't know, get to work in very interesting large scale projects despite politics at corporate level, work my 40h week, get to travel comfortably around the world, play digital nomad when I feel like it. Doesn't seem that bad to be invested into Java/.NET/C++/Web eco-systems.
- pron 7y agoThe Java ecosystem is the size of a mid-sized country. I love Clojure but the small tip of Java (language) developers doing extremely interesting, unusual, creative stuff (like, say, controlling robot swarms [1] or marine robots [2], or sophisticated formal methods tools like for TLA+ [3] or Alloy [4], or computing orbits for NASA [5], or embedded hard-realtime for cars and manufacturing [6], or games like Minecraft) still outnumber all Clojure and Scala developers working on creative unusual stuff at least 10 to 1. It's just that in a small pond it's easier to spot a few islands of creativity than it is to spot the many such islands in an ocean. [1]: https://www.infoq.com/presentations/java-robot-swarms/ https://www.infoq.com/presentations/java-robot-swarms/ [2]: https://en.wikipedia.org/wiki/Liquid_Robotics https://en.wikipedia.org/wiki/Liquid_Robotics [3]: http://lamport.azurewebsites.net/tla/tla.html http://lamport.azurewebsites.net/tla/tla.html [4]: https://alloytools.org/ https://alloytools.org/ [5]: https://www.infoq.com/presentations/java-science-aerospace/ https://www.infoq.com/presentations/java-science-aerospace/ [6]: https://www.aicas.com/ https://www.aicas.com/
- fulafel 7y agoI agree the absolute number of cool things done with Java is bigger, but the average Java project is very bland and as a Java programmer you are very unlikely to land one of these NASA projects.