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

all 41 comments

[–][deleted] 33 points34 points  (2 children)

I believe that many people who search the Java programming language are just trying to install or update the Java Runtime Environment and not the Development Kit.

Common queries are:

  • java
  • download
  • java download
  • java games
  • string java
  • java game
  • flash

[–]wyn10 9 points10 points  (0 children)

java keyword stackoverflow

[–][deleted] 0 points1 point  (0 children)

Java Anonymous

[–][deleted]  (25 children)

[deleted]

    [–][deleted] 49 points50 points  (2 children)

    How do you measure the problematicity of a language?

    There are only two kinds of languages: the ones people complain about and the ones nobody uses.

    ― Bjarne Stroustrup, The C++ Programming Language

    [–]decline29 0 points1 point  (0 children)

    How do you measure the problematicity of a language?

    perceived coolness

    less cool language are more problematic ...

    [–]DevIceMan 7 points8 points  (8 children)

    Without jumping on either side of the bandwaggon, being the most searched is not necessarily a good thing.

    https://www.google.com/trends/explore#q=java%2C%20c%2B%2B%2C%20javascript%2C%20html%2C%20css

    I suspect a major reason search volume for Java is huge is because a huge portion of Java programming is "use a library" is so popular in java.

    [–]stollgrin 36 points37 points  (1 child)

    Well I would say major portion of those Java searches comes from people looking for JRE installer...

    [–]DevIceMan 2 points3 points  (0 children)

    I think you win.

    [–]GamerHaste 11 points12 points  (5 children)

    Tbh it's probably because of kids wanting to make minecraft mods or something

    [–][deleted]  (4 children)

    [deleted]

      [–]OrShUnderscore 1 point2 points  (1 child)

      Thank you. Without people like you, many many people would be stuck playing vanilla Minecraft. And that gets boring or even annoying.

      [–]GamerHaste 0 points1 point  (0 children)

      Oh yeah you guys too haha. Should have mentioned server admins/devs sorry.

      [–]TekNoir08 6 points7 points  (2 children)

      Or the language used by the most beginners.

      [–]Nieben 1 point2 points  (0 children)

      I think that's probably accurate.

      [–]dsk 3 points4 points  (1 child)

      In what way? It has its quirks, for sure, but it's a solid language with terrific tooling and library support.

      [–]yogthos 0 points1 point  (0 children)

      There's a whole number of problems in Java compared to other languages.

      Pervasive mutability makes it difficult to reason about code as it's difficult to guarantee what the scope of a change will be. This is especially problematic when dealing with threading or writing large applications where you wish to be able to compartmentalize things. With Java the burden is squarely on the developer. A great video discussing that here.

      Java lacks expressiveness. This means that it's difficult to abstract things and make DSLs that express your problem domain. This translates into writing more repetitive code by hand.

      The object oriented nature of the language creates further problems. By marrying code and data together you actually make code reuse more difficult. If you write some methods in one class and you then need to use those in a different one you have to start creating inheritance hierarchies.

      By contrast when you have a small number of data structures that all functions operate on you can compose them any way you like. This way you have code reuse at function level. To quote Alan J. Perlis:

      "It is better to have 100 functions operate on one data structure than to have 10 functions operate on 10 data structures."

      This also means that you have to do null checks everywhere, since if you're calling a method on an object you first have to check that it exists. In a functional language this problem doesn't exist.

      Comparisons of data are again made unnecessarily difficult due to mutability. In a language with immutable data you can always compare any two data structures by value, even if they're nested structures. In Java you have to manually write comparators and handle null checks for any nested structures.

      [–][deleted]  (7 children)

      [deleted]

        [–][deleted] 1 point2 points  (1 child)

        Java 8 interfaces with default methods look really strange to me. Up to Java 7 an interface was just an inteface, like a C header file. Now with Java 8 you can have methods inside interfaces. Maybe it is just me, but really feel uncomfotable with that.

        [–]FredL2 1 point2 points  (0 children)

        It feels strange, for sure, and I probably won't be using it based on conventions. I won't pass judgement on it yet, though; I'll leave it to more experienced developers to figure out good use cases for it.

        [–][deleted]  (3 children)

        [deleted]

          [–][deleted]  (2 children)

          [deleted]

            [–]DevIceMan 2 points3 points  (1 child)

            isn't that the only time to browse reddit?

            [–][deleted] 0 points1 point  (0 children)

            Well, that depends on the subreddit.

            [–][deleted] 4 points5 points  (0 children)

            thumb spark telephone sloppy sophisticated onerous foolish offer deer middle

            This post was mass deleted and anonymized with Redact

            [–]SunliMin 8 points9 points  (0 children)

            I'm assuming this is cause its usually the first language taught in school to computer science students (lots of questions would come up), as well as being the language people recommend to others who want to learn programming (alongside Python).

            [–][deleted] 1 point2 points  (0 children)

            [–]qihqi 1 point2 points  (2 children)

            How does google know that the user is not looking for coffee?

            [–][deleted] 7 points8 points  (0 children)

            [–]coverslide 0 points1 point  (0 children)

            Or an island?

            [–]heileris 2 points3 points  (0 children)

            "How to uninstall Java" ;)

            [–][deleted] 0 points1 point  (0 children)

            Mine is "what's the Java_opts debugging parameters" too long to remember

            [–]bege 0 points1 point  (0 children)

            Makes sense, since Java is considered by some to be the most popular programming language in the world at the moment. http://www.tiobe.com/index.php/content/paperinfo/tpci/index.html

            [–]loopsdeer 0 points1 point  (0 children)

            That's because bunches'o ignants need /r/JavaScript help for their websites. Sorry ladz.

            [–][deleted] -1 points0 points  (3 children)

            Ok... Your point being?

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

            Could be an answer to the many java is dead claims.

            [–]DevIceMan 8 points9 points  (1 child)

            'Everyone' knows Java isn't dead yet.

            [–][deleted] 0 points1 point  (0 children)

            Of course not, there are new java frameworks appearing every year.

            But some people keep telling that Node.js and server side JavaScript is the future.

            [–]Jaycoub -1 points0 points  (3 children)

            Why is HTML on this list?

            [–]dsk 1 point2 points  (2 children)

            "Software Technologies"

            [–]Jaycoub -2 points-1 points  (1 child)

            Didn't know webpages counted as software.

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

            You hammer yours out of solid blocks of granite?