DEV Community

Ben Halpern
Ben Halpern

Posted on

Will Java Trend Towards Obscurity?

I'm forking another conversation:

Word, this is prob a sub topic, but do you ever see anything replacing java?

Yeah, plenty.

Kotlin and Scala come to mind for obvious reasons. Swift, Elixir, Go, Rust, lots of newer stuff which can take Java's place in a lot of contexts where it's popular.

There's a long way to go, but I think Java will gradually trend down and have a lot of different languages take its place. And it will keep evolving and have a place forever. I haven't followed closely but Oracle v. Google can't have helped Java's place in the world.


via Stack Overflow

It seems like JavaScript is the only language with any kind of true moat on its popularity right now because it runs in the browser. And that will go away with WebAssembly.

I think "replace" is a bit too binary a term, but if the line in that graphic keeps going down, Java could easily lose its place as a very popular programming language.

Latest comments (55)

Collapse
 
lincpa profile image
Lin Pengcheng
Collapse
 
pancy profile image
Pan Chasinga

I really learned Java from writing Kotlin at work. My feeling is once you've closed that gap and learned how the JVM ecosystem works (how to start a project, install deps, restructure projects), then it becomes pretty trivial. My take is Kotlin is the only one that has the chance to "beat" Java. Nothing said it better than Google itself promoting it as an official language for Android, which is a major use case for Java today.

Collapse
 
dennyvasaya profile image
denny vasaya

If you are web developer, you may think so. because java rarely used for web development. PHP and node js preferred almost always. But when it comes to enterprise application development, I don't think java has any alternative. There is nothing as robust as java.

Collapse
 
lepinekong profile image
lepinekong

If you want a job in big corporate world between Java and Kotlin, you'd better still learn Java. Of course if you can learn both you'll have more opportunities ;)

Collapse
 
iuriimednikov profile image
Yuri Mednikov

Hi,

  1. Scala and Clojure were mentioned in comments, but they cannot be replacements for Java in any case. Do you know a good web framework for Clojure? That's a point. Scala is quite limited in its audience. And finally both run on JVM, not vice versa, not Java runs on ScalaVM.
  2. Java would still have a future in teaching, because it is a very good language to teach OOP and algorithms. It is easier than C++ to learn. And there is a lot of academic literature written for Java.

BUT
When I started my programming way, Delphi was incredibly popular, but after Delphi 7, the platform began to decline very fast. But it is still in use, there is a lot of software written in Delphi, that somebody need to maintain and update. And now you can get a good deal if you know Delphi (but on a very high level, not just Hello world). Nobody remembers Borland today; you can use Lazarus - open source replacement.

Maybe Java would come the way of Delphi? Who knows. Actually I don't care too much about it.

Collapse
 
rrampage profile image
Raunak Ramakrishnan

To put a different spin on this, some traditional Java "patterns" (SynchronizedSingletonFactoryFactoryBuilder, 30 circles of inheritance hell) are trending to obscurity as Java starts getting more functional features like lambdas, better pattern matching (coming soon) and record types. There are upcoming changes in JVM itself for value types, non-erasure of types for generics during run-time which will make JVM even better as a polyglot platform.

Collapse
 
alainvanhout profile image
Alain Van Hout

Just to give some perspective, try adding Ruby or JavaScript to the mix. Surely those aren't actually in decline.

Always keep in mind: lies, damn lies, and statistics ...

Collapse
 
rhymes profile image
rhymes • Edited

Ruby is a little bit on decline, at least on StackOverflow: insights.stackoverflow.com/trends?...

In comparison, look at what happens if we add Python insights.stackoverflow.com/trends?...

Collapse
 
alainvanhout profile image
Alain Van Hout

Indeed, and I don't really have the impression that Ruby is already partway fading into non-existence (as the graph somewhat suggests, given the decline and the general low absolute count itself). As to Python, in the graph it has overtaken Java, and completely overshadowed most other languages that I tried. Taking the graph at face-value, it would be reasonable to expect Python to be the only real game in town, but that surely isn't the case.

And that's my point about these kinds of graphs in general. As Inigo Montoya would say (if he were a statistician): I don't think that graph means that you think it means.

Thread Thread
 
rhymes profile image
rhymes

I agree :-)

Ruby is alive and well, Python had a surge because of data science, AI and ML, Java is alive and well (maybe less adopted by new Android apps, that's it). All of three are quite old languagues.

It's really really hard to effectively measure "obscurity".

Perl is the perfect example, I haven't heard about it in years, it's not the cool tool everyone is talking about anymore but it's not dead either.

Collapse
 
grayjack profile image
GrayJack

I hope Java language just dies out, I hate the languages, though I like the plataform

Collapse
 
darkain profile image
Vincent Milum Jr

Don't worry. C/C++ will trend and fade into obscurity, too. I mean, just look at all the micro controllers such as Arduinos and ESP chips that all are entirely based around C/C++ toolchains!!! oh... wait...

Collapse
 
thebouv profile image
Anthony Bouvier

Enterprise gets mentioned a lot when discussing Java, but tied to that also in non-enterprise environments is anyone doing data science.

Python and R might be the working languages of data science, but the landscape is held up by Java.

Think about all the Apache projects (Hadoop, Kafka, Solr, and so many more) -- those are all written in Java. Those aren't going away or being rewritten or replaced any time soon I don't think.

There's a lot more Java out there running amazing things that lots of devs just don't realize and just fall back on "Java is yucky".

Note: I don't program in Java, but I use a lot of things that are.

Collapse
 
bgadrian profile image
Adrian B.G.

No, never.

Signed, a Java hater.

Collapse
 
gypsydave5 profile image
David Wickes

Will Java Trend Towards Obscurity?

I sincerely hope so.

Collapse
 
sake_92 profile image
Sakib Hadžiavdić

Java is dead. Part #834356234 :)
No it's not dead, nor it should be!
Maybe not as concise (yet! but it will be) but a great, great language.
With pattern matching coming, value classes etc. better-java-s gonna lose!

Collapse
 
thomasjunkos profile image
Thomas Junkツ

»In the long run we are all dead«
John Maynard Keynes

Collapse
 
tadman profile image
Scott Tadman

"Proves to warn that he not busy being born is busy dying." –– Bob Dylan

Collapse
 
djtai profile image
David Taitingfong

I think we'll see some gradual decline in Java being a very popular language, especially among your average college student - and I like to believe that colleges have pushed Java onto students for quite some time now. It was the language I learned in my intro to CS classes but that's not so much the case nowadays, or at least that's what I'm seeing/hearing. Lots of colleges are offering these intro courses in Python or JavaScript now.

As others have said, Kotlin is a likely replacement for Java seeing as it can pretty much do everything Java can, just with less code (correct me if I'm wrong) - web apps, backend stuff, Android apps, etc...

Never forget though!...Java runs on billions of devices, lolol.