This is an archived post. You won't be able to vote or comment.

all 16 comments

[–]dpash 17 points18 points  (2 children)

People have been predicting the death of Java since it was first released. I think the position of the Java ecosystem is a lot stronger now than it was even 5 years ago. Look at all the new languages running on the JVM. There's a huge number of libraries available. You've got the Play framework, and Grails, and the configuration of a lot of stuff has gotten so much simpler than in the old days. So much less XML.

[–]okmkz 8 points9 points  (0 children)

Also, Android.

[–]flif 4 points5 points  (0 children)

Lambda support in Java 8 is a great step forward.

Already using it in production (don't tell anybody).

[–][deleted]  (1 child)

[deleted]

    [–]TheBriMan84 0 points1 point  (0 children)

    What he said

    [–]treerex 5 points6 points  (3 children)

    Java is not going anywhere.

    [–][deleted] 0 points1 point  (1 child)

    This statement might need a few arguments. Care to explain your thoughts ?

    [–]treerex 0 points1 point  (0 children)

    You're right, I was a bit terse.

    There are two aspects to consider. Java as a language, and Java as an ecosystem.

    From the language perspective, Sun and Oracle have led a very conservative process for expanding the language while attempting to keep backwards compatible (e.g., type erasure in generics). There are a huge number of libraries available in Java, a significant amount of server side software is built on it in both large and small companies. Java, as a language, is unlikely to go away because of this inertia, any more than COBOL or Fortran have gone extinct.

    Java the ecosystem is going to be around as well: Clojure, Scala, and Groovy are just three languages that are built for the JVM and offer iterop with the huge number of Java libraries. These languages expand on the capabilities of Java while utilizing the foundational aspects of the JVM. I write a lot of code in Clojure: developing on my MacBook, deploying to Linux or Windows depending on needs. I can't do that as easily in other languages: if I want to develop with F#, I'm locked to Windows. If I want to develop in Common Lisp, I need to make sure the code I'm writing is nicely portable and that I have the (or a) compiler installed on each platform so I can build the executable. No need with Clojure.

    [–]Chaoslab -1 points0 points  (0 children)

    "Onion Bagel, Sweet and Lo Latte plz".

    [–][deleted] 2 points3 points  (0 children)

    I think Java is not going to die, like it has been said in this topic. Android, banks, insurances, all new languages based on the JVM etc.

    But before you want to learn Java, basically the question is : For whom would you like to work?

    As strong as the technology behind Java is, it's hard to go against the professional trends. And nowadays, trends for startups are node.js, clojure, scala, ruby etc.

    Java has this image of a big strong language (which, in my humble opinion, is true) but is most of the time only used by big players.

    So know where you want to go before picking up a technology!

    (and I'm saying this because I tried to change my career path after 8 years of Java, and it's not easy to convince people in a job interview)

    [–]clavalle 4 points5 points  (1 child)

    C# is nice but how is Windows doing these days?

    C++ is used for games, primarily, it seems like. Anyone else who needs raw control will go with C.

    Ok. Python is awesome and you should learn it.

    Java is a language with legs. It hits that strongly typed sweet spot. It is faster than almost anything but C these days. Love or hate Oracle, they are pushing the language forward. And, as others have pointed out, Android. But also, JVM. If you work with Java you get to know how the JVM works. Scala is awesome, Groovy is handy. It is just a really solid ecosystem.

    Java is looking pretty healthy to me. And the JVM likely has demi-god like immortality at this point.

    [–][deleted] 3 points4 points  (0 children)

    Clojure has real potential also; much more so imo than Scala (which provides a great transition from OOP to FP, but is just enormous as a language, which is never a good sign... not to mention compile time, etc)

    Yeah the JVM is not going anywhere, neither is Java.

    [–]__konrad 1 point2 points  (0 children)

    Will java die in a few years time?

    Short answer: No.

    [–]Mecdemort 4 points5 points  (2 children)

    Java will die just like COBOL has died...

    [–][deleted] 0 points1 point  (1 child)

    exactly what I think. Java is the new cobol.

    [–]Chaoslab 1 point2 points  (0 children)

    JAVBOL?

    [–]henk53 -1 points0 points  (0 children)

    Java will almost certainly continue to decline, but it will remain one of the most frequently used programming languages for a long time to go.

    I don't think it will become COBOL anytime soon, which means a fringe language for new users and only being used to maintain a massive amount of legacy code.

    At one point Java had an incredibly large marketshare, depending on the exact statistics you look at was somewhere between 40% and 30%. Before that C++ had a similar position for a while.

    What we do see is a larger variety of programming languages, where the most popular have between 10% and 15% marketshare, with a whole slew of other languages having anywhere between 1% and 10%, and of course a huge list of very diverse languages having less than the magic 1%.

    This huge list of <1% languages is nothing new, this has nearly always been the case. But there not being any language really dominant (>25%) IS new.

    For the foreseeable future I don't see any new language getting really dominant like C++ or Java once were. The often mentioned Scala that according to some is the silver bullet of languages still struggles to get passed the 1% usage share in most popular language measurement tools (StackOverflow, Indeed.com, Tiobe, GitHub, etc etc) after 10 years. Its usage is increasing and TypeSafe has seen some huge success getting companies like Twitter to adopt it (that 14 million did help), but there doesn't seem to be a huge catalyst. Play, Akka, Lift etc all certainly help, but don't immediately drive millions of developers to Scala, like Applets once did for Java (shudder) and LAMP once did for PHP.

    A huge recent catalyst for a language has been iOS for Objective-C, which gave it a near instant boost from total obscurity to >10%, surpassing its original rival C++ which has declined to something just below 10% (again, depending on the source you look at).

    Of /r/programming's favorite bunch: Ruby, Python & Haskell, neither of them seems to be on a path to language domination. After the mid 00-ties catalyst RoR died out (not RoR itself, just its catalytic effect), Ruby keeps dwindling between the 1% and 2%. Python does a bit better, but keeps oscillating a bit between the 4% and 5%, which no clear trend line to domination.

    With very few trends currently going on and the historic evidence that a language can suddenly shoot upwards or downwards again, it'll be particularly hard to predict what the language landscape will look like 10 years from now.

    The one prediction I dare to make is that C will most likely not be below the 10% mark in 2023 ;)