DEV Community

Discussion on: I want to learn a new programming language. What should I learn?

Collapse
 
ahferroin7 profile image
Austin S. Hemmelgarn

Java use in smartcards is mostly due to historical reasons, not practical ones (that is, that's what was chosen for that purpose, and they can't really change it all that easily), so it's not exactly the best example, especially considering that that's an area that you're almost never going to find a Dev job in.

Java usage elsewhere is starting to become more like Cobol though, it's used because of tradition and the cost of changing, not because it's a great choice. Yes, if you want to work in an enterprise setting where they are that interested in just keeping things working and are still stuck on a questionable platform as a result, it might be worth learning, but it's not going to do much except improve your employability and teach you a number of bad habits (and possibly make you question the sanity of the language designers).

Now, learning how the JVM works actually is useful, but I'd suggest Clojure, Kotlin, or Scala instead of Java for that. They're not quite as close in some respects to how the JVM works as Java is, but they're also more immediately marketable and more in-line with other modern languages than Java is.