Slashdot Mirror


If Java Wasn't Cool 10 Years Ago, What About Now?

10 years ago today on this site, readers answered the question "Why is Java considered un-cool?" 10 years later, Java might not be hip, but it's certainly stuck around. (For slightly more than 10 years, it's been the basis of the Advanced Placement test for computer science, too, which means that lots of American students are exposed to Java as their first formally taught language.) And for most of that time, it's been (almost entirely) Free, open source software, despite some grumbling from Oracle. How do you see Java in 2014? Are the pessimists right?

6 of 511 comments (clear)

  1. Re:I hope not by Pino+Grigio · · Score: 5, Insightful

    It was just coming into favour when I left. When I was around it was Modula-2 and Eiffel (for OOP) at University. I have always found Java to be absolutely horrific in practice, being pretty much the worst of all worlds. Today C# is far superior, whatever you think about Microsoft, and it's a real shame that .NET was mishandled at birth in the way that it was.

  2. Re:What's the point? by MythMoth · · Score: 5, Insightful

    It's a compromise language. Compromises are, in fact, a good thing but purists hate them. Of course. That's what purism *is*. But really, who cares if it's cool? We're geeks, I thought we were supposed to be opposed to "cool" anyway?

    It's a known quantity and before you dismiss it you should consider the truly vast amount of software that's been successfully implemented in Java.

    Personally I like it. It has it's niggles (if I were king I'd change oh so many things) but it keeps on succeeding like most good compromises.

    --
    --- These are not words: wierd, genious, rediculous
  3. A stupid consideration by DoofusOfDeath · · Score: 5, Insightful

    What good engineer gives a f**k about what language "cool", aside from considering his/her ability to hire hipsters to staff the project?

    If you're worried about the "coolness" of a language when doing your day job, you're almost certainly doing your job poorly.

  4. Re:I hope not by Aighearach · · Score: 5, Insightful

    Jeebus people, just open the story from 10 years and press "reload." There you go, you asked again and got the answers again.

    It might be that there are real pros and cons for languages. It might be that the reasons languages are "un-cool" are because they address the needs of the pointy-haired, and don't support pocket protectors.

    And it does make perfect sense for Java to be the 1 required language in a CS course; it might be the only way to get kids to learn it, since it is so un-cool, lame, and inefficient for the small projects that students are working on. In a well designed CS course, very few problems have a required language past the basic algorithms classes. (Where standardization allows for a higher quality class when the teachers are grad students)

    Anyways, it makes sense to teach Java, because the best use case for Java is to be able to use massive teams of low quality developers, potentially with high turnover, and still make working software. These are the people most in need of the job training type of education. People who are going to work in almost any other area are going to have to be able to learn new tools quickly based on the manuals, and it won't matter what they studied.

  5. Re: I hope not by Aighearach · · Score: 5, Insightful

    You don't need an "OO... language" because OO is a methodology. You can learn pure, real OOP using almost any language. Plain C works fine.

    You can also write bad procedural code in an "OO language" because that is also a methodology. I see that crap all the time; giant 50+ line methods that do a bunch of things and all the utility functions are procedural-style class methods. Lots of Rubyists don't have any idea even what the difference between OOP and Procedural is, they just assume they must be doing OOP since they're using an "OO language."

    Same thing with learning scheme; when you associate functional programming with a language instead of a methodology, the first thing new people do is try to find a way to fake some state and they end up with spaghetti procedural instead of functional.

  6. Re:I don't care about Java by buddyglass · · Score: 5, Informative

    Also worth noting is that the downward trend in Java's market share is mirrored by downward trends in the share of other "highly popular" languages. This possibly indicates the market is becoming more diverse. TIOBE's chart goes back to June 2001, which, according to their numbers, is the high water mark for Java at 26.5%. In that month the shares for C and C++ were 20.2% and 14.2% respectively. In August 2014 Java had declined to 15.0%. C and C++ declined to 16.4% and 4.7% respectively. Woe is C++. In fact, of the top ten languages in 2014 the only ones to gain market share over the past year are Javascript and Objective-C. Javascript has been more or less flat; Objective-C spiked earlier this year but has since dropped back to 2013 levels.

    Python? Peaked in February 2011 when it reached 7.0% in TIOBE's index. It's currently sitting at 3.1% in August 2014.

    Ruby? Peaked at 4.0% in December 2008. Currently at 1.2% in August 2014.

    I can't get info on Scala, Go, Haskell, Scheme, Erlang, Groovy, et. al. because they aren't used widely enough for TIOBE to even report stats.