Over the past week, I’ve heard the following quotes “I want a career in Java” and “Java is the next Cobol.” While these two statements don’t conflict with each other when taken literally, the connotations are quite clearly opposites. Let’s take a look at themS
“I want a career in Java”
This is often asked in the context of a college student who doesn’t have any programming job yet. So why Java specifically? When I was in college, I wanted to be a developer. Any language would have been fine. It was where my path happened to take me that made me (currently) a Java developer.
Further, you don’t have a career in one programming language. Things change too fast in technology for that to be the case. So despite the fact that I’ve been a Java developer for the last ten years, it doesn’t imply that will be the language for my whole career. Or maybe a career is a shorter term concept than that which I think of?
I think the context behind this statement is that Java jobs appear to be plentiful and pay well making them attractive to someone without any language experience.
“Java is the next Cobol”
A quick internet search says Java has been compare to Cobol since at least 2007. Let’s see. Cobol is a widespread language used in countless production applications. It lasted decades. It wasn’t cool, but it worked. Not a bad place to be.
I think the context behind this statement is that Java isn’t cool anymore. Or a “default” choice of language. Which is fine.
Where we are
These quotes show that we have people eager to learn Java and people predicting it’s demise at the same time. Clearly the reality is somewhere in the middle.
Java is good for certain types of apps. JVM languages are good for certain types of apps (especially when there is a desire to integrate with “legacy” Java code.) As is .NET and Python and Ruby and …
Inovation is good. That’s why we became techies!
As you said java is in popularity, what is next coming in your career after java?
We have been discussing something similar http://www.coderanch.com/t/580152/java/java/future-Java The whole idea of Ployglot programming on JVM is driving people to learn different languages,. One can use Actor based concurrency model from Scala or a STM based one from Clojure and so on. But Java is here to stay. Its been the tried and tested solution for loads of enterprise applications deployed around the world. There have been efforts to make Java on part with the younger kids, but then that’s a lot of effort.
Jobs wise- java provide plentiful options, but emerging technologies provide the excitement to work 🙂 People are scratching their itch and that is how we have so many JVM languages evolving and that is the innovation as you said.
Still mainly Java for the foreseeable future. I don’t believe that in 20 years, I’ll be doing mainly Java though. My point isn’t that Java is bad. It’s that I don’t think it is likely one will have a career in one language.