Catch up on stories from the past week (and beyond) at the Slashdot story archive

 



Forgot your password?
typodupeerror
×
Java Programming Stats

Java Named Top Programming Language of 2015 (dice.com) 358

Nerval's Lobster writes: What was the most popular programming language of 2015? According to the people behind the TIOBE Index, Java took that coveted spot, winning out over C, Python, PHP, and other languages. "At first sight, it might seem surprising that an old language like Java wins this award," read TIOBE's note accompanying the list. "Especially if you take into consideration that Java won the same award exactly 10 years ago." Yet Java remains essential not only for businesses, it continued, but also consumer-centric markets such as mobile development (i.e., Google Android). That being said, even big languages can tumble. (Dice link) Objective-C tumbled from third place to 18th in the past 12 months, thanks to Apple's decision to replace it with Swift. In 2016, TIOBE expects that "Java, PHP (with the new 7 release), JavaScript and Swift will be the top 10 winners for 2016. Scala might gain a permanent top 20 position, whereas Rust, Clojure, Julia and TypeScript will also move up considerably in the chart." What has been your most-used (or best-loved) programming language of the last 12 months?
This discussion has been archived. No new comments can be posted.

Java Named Top Programming Language of 2015

Comments Filter:
  • Really??? (Score:5, Funny)

    by scunc ( 4201789 ) on Thursday January 07, 2016 @04:25PM (#51257829)
    Java topping the list of programming languages is like Donald Trump topping the polls for the Republican nomination: they both have their rabid, energetic fan-bases, but most of the rest of us are just sick to our stomachs wondering how it happened and waiting for it to be over ...
    • Re:Really??? (Score:5, Insightful)

      by darkain ( 749283 ) on Thursday January 07, 2016 @04:29PM (#51257869) Homepage

      As TFS points out: ANDROID. That's why Java is #1. We're still stuck with this shithole as long as Android continues to dominate mobile and they continue to focus almost exclusively on Java.

      • You could say that Java is like Bill Clinton spending a third term in the White House: an old thing that ought to have been retired, who's kept around because it is married to something successful.

        In all seriousness, Java is useful because a lot of people are good at writing Java. It will be a long while before the it is retired and replaced by C#, Swift, or some other language that is Java-like but slightly better. Java will probably retire along with programmers who grew up in the 1980's and 1990's who le

      • Re:Really??? (Score:4, Insightful)

        by Darinbob ( 1142669 ) on Thursday January 07, 2016 @10:01PM (#51259663)

        The attitude in the summary is just stupid. "Surprising that an old language"... but then ignoring that C is in second place. And really there have not been great languages coming out after Java and no realistic replacements for C. Sure, there are scripting languages but that's a different niche. Not everything that runs programs is on the Web or a PC.

        The new programming paradigm that Java excels at is to stop programming and just tie together existing frameworks and libraries like it's one giant lego monolith. Of course somewhere someone has to write the stuff in those libraries; which is more Java and if you get low level enough it's C.

        Python replaces some of this but comes with it's own headache (gotta make sure your customers can run it and are configured with the right versions, etc. C# has many problems and is a clumsy hybrid, and also never really caught on outside of the OSX/iOS/NeXT worlds. C++ is stuck in the middle, not quite being as easy as Java and too much feature creep to replace C. Swift is too new, not very portable, etc.

        What really happens is that people have a language that works, so stick with it. Why through out ten years worth of code base just because there's something newer? An utter waste of time. The vast majority of commercial programmers never start writing code from scratch but instead are fixing bugs or adding features to an existing product.

        • C# has many problems and is a clumsy hybrid, and also never really caught on outside of the OSX/iOS/NeXT worlds.

          I think you meant to say Objective-C there.
        • C++ is stuck in the middle, not quite being as easy as Java and too much feature creep to replace C.

          Such as?

          The main problem is parsing C++ which makes writing a compiler hard. However between GCC, LLVM and the commercial front ends, this is not much of a problem any more. There are still a few C only devices, but they are getting quite obscure. C++ certainly scales down to some of the smallest devices just fine (Attiny, for example). Both IAR and GCC support C++ on some really, really small devices.

          But th

    • Re:Really??? (Score:4, Insightful)

      by Anonymous Coward on Thursday January 07, 2016 @04:37PM (#51257933)

      Hardly anybody is a "rabid fan" of Java. It's a mature, full-featured language with a healthy (perhaps leading) ecosystem of APIs, tools, developers, and training materials, that is considerably faster compared to scripting languages in many situations. This is reality, not fandom.

      • Re:Really??? (Score:5, Informative)

        by lgw ( 121541 ) on Thursday January 07, 2016 @05:03PM (#51258121) Journal

        Hardly anybody is a "rabid fan" of Java. It's a mature, full-featured language with a healthy (perhaps leading) ecosystem of APIs, tools, developers, and training materials, that is considerably faster compared to scripting languages in many situations. This is reality, not fandom.

        This.

        I don't like Java. It's the worst of the "curly brace languages" IMO. But I still find it vastly better than the scripting languages, even Python. The ability to find problems at compile time is very important indeed.

        I like C# better, but it's a hard sale for Linux server code. I like C++ better for my own code, but I have vastly more confidence in my ability to train a fresh college hire to write safe code in Java than in C++. Hell, I enjoy writing C code more than Java code, but it's not very productive where Java is used today.

        • Re: Really??? (Score:4, Insightful)

          by Anonymous Coward on Thursday January 07, 2016 @06:42PM (#51258733)

          I hate Java but is a hardcore fan. Why? Because it's the language that sucks the least. Slow and buggy "native" runtime gets replaced by Bytecode in my systems as fast as I can manage.

          There are lots of people spewing shit on Java every time it's mentioned but not a single person I've talked to can point out a single disadvantage with choosing Java.

          Yeah in time there will probably be something better. I even have designs that many developers would prefer over Java. But until there are something available that can create as stable, fast and easy to debug executables as Java while providing at least as productive development environment...

          As for .NET it was unavailable for the hardware Google where targeting and still has to many bugs to be stable. And when it comes to servers and desktops same things... come back when it works as well as Java on SPARC/Solaris and various IBM platforms. To name a few targets most developers have to support.

          And when it comes to anything that doesn't JIT code. That increases development, deployment and maintenance costs. C++ binaries are to slow compared to C++ because SSE and other advanced CPU features they don't support. Yeah most code doesn't get recompiled with modern compiler's and redeployed. Bytecode however does. Therefore the average deployed Java code is way faster.

          And that even gets worse because native code optimized for old processor's may actually be a lot slower than non-optimized code.

          And when it comes to Android nothing beats Dalviks performance. Native code is super slow because it use more memory and OpenJVM can't run on android-supported hardware. Yeah that doesn't apply to my Samsung S3. But guess what, early android phone didn't have a fraction of that hardware. So to all of those saying that Dalvik was a bad choice, find some original Android phone and prove that you can make anything faster.

          So yeah I don't like Java at all. But people saying that it sucks without providing me with an alternative doesn't help me switch to another language.

        • vastly better than the scripting languages, even Python. The ability to find problems at compile time is very important indeed

          I run lint after every edit in Python. Should be vastly better than compile at finding errors. Need to get Emacs to auto-run for me.

    • by bigsexyjoe ( 581721 ) on Thursday January 07, 2016 @05:27PM (#51258269)

      It won because it's the best programming language. You can go cry to your mama about that if you want.

      • by LQ ( 188043 ) on Friday January 08, 2016 @05:18AM (#51260639)

        It won because it's the best programming language. You can go cry to your mama about that if you want.

        And Java 8 has IMHO completely refreshed the brand from a programming perspective. I'm really enjoying Java again.

    • Re:Really??? (Score:5, Insightful)

      by buddyglass ( 925859 ) on Thursday January 07, 2016 @05:32PM (#51258295)
      Most Java "fans" I know are considerably less "rabid" than devotees of more trendy languages (I'm looking at you, Ruby). Just my experience.
    • by jma05 ( 897351 )

      I stopped disliking Java since 1.5. People can use Scala and Groovy if Java bothers them so much and still benefit from the ecosystem. They should work on Android as well.

  • half my job is to be sys admin, lots of bash (for linux) and ksh (for bsd) scripting for batch jobs

    still having to write shit in perl 5 (boo) and ruby (yay) for larger things, like conversion and importing jobs

    on the dev side of my devops job, yes java (ew)

  • Old? (Score:5, Informative)

    by fahrbot-bot ( 874524 ) on Thursday January 07, 2016 @04:34PM (#51257907)

    Java took that coveted spot, winning out over C, Python, PHP, and other languages. "At first sight, it might seem surprising that an old language like Java wins this award," ...

    Interesting comparison, singling out Java as "old". Python is older. From Wikipedia:

    • Java - First appeared 1995; 21 years ago
    • C - First appeared 1972; 44 years ago
    • Python - First appeared 1991; 25 years ago
    • PHP - First appeared 1995; 21 years ago

    Age doesn't matter. Usefulness does. My top language: Perl - First appeared 1987; 29 years ago.

    • Age doesn't matter. Usefulness does. My top language: Perl - First appeared 1987; 29 years ago.

      The concept of hell isn't new either....
      • Age doesn't matter. Usefulness does. My top language: Perl - First appeared 1987; 29 years ago.

        The concept of hell isn't new either....

        I imagine that the concept of Hell is probably pretty useful - or were you referring to Perl? :-)
        [ I'm the GP poster for this, so I can make fun of myself ... ]

    • Re:Old? (Score:5, Informative)

      by Dutch Gun ( 899105 ) on Thursday January 07, 2016 @06:06PM (#51258515)

      Age doesn't matter. Usefulness does.

      Age matters, because CS is a relatively young discipline. We've learned many things along the way, and capabilities continue to evolve, meaning that certain tradeoffs are more relevant than others.

      Would you design today C the exact same way as the original, even if the design goals were exactly the same? Of course not. You'd likely eliminate a lot of the blatant shortcomings, such as the ease in which memory is stomped, the way pointers and memory can be so easily corrupted or leaked, and the unsafe nature of many of its library functions. C++ has proven you can eliminate those faults with little to no runtime overhead. C was designed at a time when memory and run-time efficiency were given much more importance than runtime data integrity or safety. That's simply not the world we live in today, in which a set of flaws in a multimedia library can cause one of the biggest security holes of all time.

      Look at how vastly different C++14 looks than C++ 98. The addition of smart pointers, move semantics, lambdas, and a few other key features mean the language almost looks like a modern managed language like C#, albeit quite a bit uglier in the syntax department. And I *still* think that the ref-counted constructor-destructor paradigm is actually more practical in many situations than garbage collection, which is really only designed for a single type of resource (memory, obviously). These days, it's incredibly rare that I actively manage memory or raw pointers in my C++ programs. We've learned that doing so is a common source of bugs and security flaws, so these days we tend to ask the compiler or the runtime to do it for us.

      • CS is a relatively young discipline

        Youth is relative.

        Look how different a 1968 Ford Galaxy looks to today's Ford Galaxy! And think how much pollution you can create with a supercharged 500 cubic inch engine! Forget about VW's puny 100 cubic inches.

        My 89 year old mother was a Fortran programmer in the 1960s. Two of my friends had fathers who taught programming in the 1950's.

        YMMV

        • CS is a relatively young discipline

          Youth is relative.

          Well, I'm not going to disagree with you, as that's precisely what I stated. Compared to civil engineering, with a few thousand years of history, programming in the 50s or 60s isn't all that impressive. But compared to electrical engineering, which grew up in the 19th century and took off during the 20th, it fares better.

      • by Luthair ( 847766 )

        C was designed at a time when memory and run-time efficiency were given much more importance than runtime data integrity or safety.

        Application complexity was also significantly lower than today making easier to troubleshoot and avoid problems in the first place

    • Funny side-note: I read that as "Perl - First appeared 198729 years ago"
  • by ClickOnThis ( 137803 ) on Thursday January 07, 2016 @04:48PM (#51257985) Journal

    "I'd like to thank ... myself. I deserve it."

  • The popularity is largely because Java has two niches: enterprise applications, and Android apps.

    This does not necessarily mean people like it. On the enterprise side, the only other viable choices are Microsoft languages, and COBOL; and for the Android native app side, there are no viable alternatives (with good-enough market share).

    C++ is better suited to hardware-centric applications and system drivers rather than CRUD, and business/enterprise.

    It's more of a lack of choice than it is love of Java. For sm

    • by Anonymous Coward

      I don't think you know what niche means.

    • For smallish web-oriented apps and internal scripting there are choices like Php, Python, Perl, and Ruby. But if you want a compiled language

      All of the above are compiled at execution time, and can also be compiled to an executable if desired. Also, why on earth would you want a compiled language in the first place -- need to be compiled is a necessary evil, not an advantage.

    • by delt0r ( 999393 )
      IF you going hardware, i can see how C++ is better than C. Since C is syntax sugar for asm and well when your talking to hardware, that is what you want. Outside that you shouldn't be getting to concerned with hardware specifics. It is 2015 for gods sake. 1960s called and what there write once run once on one machine code back please.
  • by zapadnik ( 2965889 ) on Thursday January 07, 2016 @04:49PM (#51257997)

    Ubiquity and Longevity are important. It takes a while to create Big software projects, so fad du-jour languages have an Achilles Heel here. Java is pretty much ubiquitous and is very long-lived (so far).

    When you have large code bases and lots of people trained in a technology then you tend to use it even more. WORA (Write Once Run Everywhere) is a killer feature, and Java system written on architectures that are now less used (i386, Irix, AIX, Solaris, etc) work pretty much painlessly on new hardware. Java scales from the massive to the miniature and thanks to the talented people at Sun, Oracle and OpenJDK the performance of Java is pretty phenomenal.

    I personally am writing a jet combat flight simulator (which I'm mostly keeping under the radar, for now) in Java. I never have to worry about multi-threaded CPU performance. Seriously, never. I only spend time worrying about the bottlenecks in the GPU. Java and OpenGL (via JoGL) are a potent combination. I will never go back to C++ if I can help it - Java libraries and tooling (I love IntelliJ IDEA and the JDK's VisualVM) are so much better. Long live Java !

    • by Arkan ( 24212 )

      Not to mention that Java tooling is quite extensive now - Maven, Gradle or Ivy offers flexible - if sometimes a bit complex - dependency and lifecycle management, which is a godsend when bootstrapping a new developer environment. Add to that nice integration tools, a few really powerful profilers (I'm fond of Yourkit profiler), some wicked hacks like APT that can save your bacon when you need to turn a project around and as said a few posts below a huge amount of readily available libraries and I can't conv

  • Apparently there are more Logo "skilled engineers world-wide, courses and third party vendors." than Bash. I think there is something very wrong with their methodology.

  • It looks like the criteria are based on search results so I have to assume that is partially to blame. Seems like Go has been nonstop in the news this past year.

    How is it that a search engine company managed the most search unfriendly name for their big programming language?

  • For me last year (and one or two before that) it's been Go (golang) that's taken over my programming life. I've taken it from a "spare time" thing to getting many services into production using Go last year, as well as getting 3 dev teams at work using it and it's already proving more productive than java, which we've all used until now, in some cases for decades.

    Look here https://github.com/trending [github.com] and you will see that golang features highly now, pretty much every day. When I list the most exciting proje

    • by snadrus ( 930168 )

      Seconded! People claim nothing's faster than a concerted effort in C, but even then you're suffering event-loop-style development. Go makes concurrency feel natural and therefore faster algorithms can be implemented more easily.

      Though algorithm reuse is discouraged somewhat due to lack of Generics, Interfaces allow it somewhat.

      But mostly what's great is its simplicity. Everyone can be a language expert, unlike the C++ "ivory tower" or similar. And unlike Java's or Python's simplicity that requires vast fram

  • by GerryGilmore ( 663905 ) on Thursday January 07, 2016 @06:17PM (#51258579)
    Well, not Java per-se, but I recently came across OpenXava (www.openxava.org), a Java-based framework and was just blown the fuck away at the incredible productivity built-in for developing applications. After wrestling with RoR and Laravel, I was amazed at the difference. It's like night-and-day. Quite frankly, it (OpenXava) could be written in asembly, Java, COBOL or haiku for all I care. What I do care about is app development productivity and if it happens to be based on java? So what? You "gotta have the very latest or you're just not cool" guys can engage in your techno-masturbation all day long. Meantime, I'm building an app.
    • I'm a C programmer, and from here your sound like a "gotta have the very latest or you're just not cool" guy.

      • I'm not sure why you'd say that: I started out fat-fingering binary into the front panel of a Data General Nova, went through and saw lots of evolutions and - yeah, working on my first app, thought "Sure, let's see what's out there that is the LAG." Looked at RoR, Laravel and a few others and was - quite frankly - disgusted by what I saw. Stumbled across this fucking nice, easy framework to develop "real" apps and - Oh! BTW! - it happens to be based on java. Like I give a shit. It works, and that's what I c
  • In 3... 2... 1...

  • I was a new software engineer at Sun when Java was developed; in the industry, lots of "old guard" people immediately started ragging on it. Now it's the scripting language kiddos who mostly rant about it as "old and outdated." Achievement unlocked!

    It's a tool, nothing more nor less. It happens to be one that's good enough for a lot of tasks, with a huge installed base and many years of well-tested open-source libraries available. The only newish language that I see with a chance to topple it is Go, but it

  • The Java language and frameworks still have their fans, but the platform has just ground to a halt and has ossified into an overly rigid and verbose environment that takes increasingly longer to get anything done in compared to other alternatives.

    Type erasure was hailed as the right thing. Time has show it was not, not at all. C#, Swift and Scala have all shown that proper generics really make for better APIs and programming models. More and more programmers are comfortable with higher-order programming, an

    • > Entity Framework just makes anything in the Java space look outdated

      Well, that statement right there illustrates you don't really know the actual details, do you? :) I write .NET ORMs for a living and have been doing that for a long long time, and EF would wish it was near the functionality and flexibility of a random JPA/JDO compatible java ORM.

  • Golang has been like a breath of fresh air. Just saying. Great for server side work.

  • My favorite language of 2015 was Perl 6, which was finally completed at Christmas. Yes, the Duke Nukem Forever of programming languages is really here!
  • This list is ambiguous. Which Perl is number 11? Was it Perl 5 or Perl 6? Because Perl 6 did release last year, you insensitive clods! Also, I find it amazing to see the surge in assembly language popularity. They are really lighting up the charts, going from 14 last year to 9 this year.
  • I've been using Groovy for the past few years. And every where I can I try to use more of it.

    http://www.groovy-lang.org/ [groovy-lang.org]

    The syntax is terse (no semi-colons if you don't want them), it adds a lot of nice touches (null is false, ?. operator), easy JSON and XML support, and yet it works seamlessly with the vast number of Java libraries out there.

    Pair Groovy up with the Gradle (Groovy-based) build tool and you have a slick package.

    I just got done writing a little utility with it. No class declaration or main(),

  • by tgrigsby ( 164308 ) on Friday January 08, 2016 @06:23AM (#51260787) Homepage Journal

    When it came time to build the next iteration of the company's flagship product I was overruled on moving to Java from Delphi for two reasons. First, because it was a Delphi shop, so it was considered a bad move because it was not our core competency. And second -- and this is what generated the most conflict -- was the notion Java was a dead language. I was confused and amused when this argument was first brought up and floored when it was seconded by the other lead programmer. And no matter how much I tried to point to Java's ubiquity and ratings I was voted down.

    I really hope those two developers got a chance to read this story.

    Mike? Todd? You there?

Any circuit design must contain at least one part which is obsolete, two parts which are unobtainable, and three parts which are still under development.

Working...