Want to read Slashdot from your mobile device? Point it at m.slashdot.org and keep reading!

 



Forgot your password?
typodupeerror
×
AI Programming Java Open Source Python Stats The Courts

Python Overtakes Java? JetBrains Releases 'State of Developer Ecosystem' Survey (jetbrains.com) 67

The creators of the Kotlin programming language — the Czech software development company Jetbrains — announced results from their annual "State of the Developer Ecosystem" survey. This year's survey involved 19,696 developers in 18 countries, and found that:
  • JavaScript is the most used overall programming language. Websites are the most common type of application developers work on.
  • Python has overtaken Java in the list of programming languages used in the last 12 months. And it is also the most studied language. In the last 12 months 30% of respondents have started or continued to learn Python — even more than last year.
  • Go, Kotlin, and Python are the top 3 languages developers are planning to adopt or migrate to.

JetBrains also gathered some statistics from programmers for a special section on Lifestyle and Fun:

  • 65% said they preferred laptops, while 33% preferred desktops.
  • 52% said they contributed to charity.
  • 20% said they owned a cat; another 20% said they owned a dog.
  • 16% said they owned cryptocurrency.

And when asked if they contributed to open-source projects:

  • 44% said "No, but I would like to."
  • 20% said "I have only contributed a few times."
  • 16% said "Yes, from time to time (several times a year)."
  • 11% said "Yes, regularly (at least once a month)."
  • 4% said "No, and I would not like to."
  • 3% said "I work full-time on open-source code and get paid for it."
  • 2% said "I work full-time on open-source code but do not get paid for it."

Also interesting were the answers to the question: If your country's government replaced your courts with AI, would you trust it? The results were:

  • Probably not (26%)
  • Definitely not (24%)
  • Maybe (26%)
  • Probably yes (20%)
  • Definitely yes (5%)

This discussion has been archived. No new comments can be posted.

Python Overtakes Java? JetBrains Releases 'State of Developer Ecosystem' Survey

Comments Filter:
  • Probably (Score:4, Interesting)

    by timeOday ( 582209 ) on Saturday June 13, 2020 @07:43PM (#60180414)
    I've made the switch from Java to Python but Java was better. It's a bit rigid a verbose but that all pays off finding problems and compile time. Even the developer tools have a lot more functionality in Java because of more static typing.
    • Why did you switch to Python if you feel that Java was better? Employee mandated change?
      • I think it's dangerous professionally to not go with the flow in tech.
        • Yeah ... where I work we use Java, C# and some python for scripting and glue code. I've been playing with Dart and I like that alot ... I haven't tried Kotlin .. seems like Dart or Kotlin would be way to go after Java. I've used Python, it's ok, but I agree with the sentiment that you can make much more robust solutions in Java and C#.

    • Even the developer tools have a lot more functionality in Java because of more static typing.

      Tool functionality is a really sad loss when you switch too Python. Even simple things like renaming variables are a lot more difficult.

  • Not surprising (Score:3, Informative)

    by _xeno_ ( 155264 ) on Saturday June 13, 2020 @07:45PM (#60180422) Homepage Journal

    It wouldn't surprise me if Java use is declining. Quite a few people started looking into alternatives when Oracle bought Java, and thanks to Oracle's recent licensing shenanigans with the Oracle JDK [lakesidesoftware.com] (short version: don't use it unless you want to pay Oracle, instead use the OpenJDK and hope security fixes get back-ported), that became less of a "looking at" and more of a "planning migration strategies." I don't remember the exact corporate policy for doing new work in Java these days, but it's effectively "don't."

    Congratulations, Oracle, by being Oracle, you've successfully driven people away from Java. Took them a few years to do, but they did it.

    • The IT admins at my job site took a look at Java's usage across the enterprise and figured out that no one was using it. They stripped out Java out in PC image and removed it form all systems. No licensing issues.
    • by swilver ( 617741 )

      I admit I didn't like Oracle getting their grubby paws on Java, I think their database product is a piece of shit and would absolutely never recommend it as fit for any purpose. I can't blame them as it is probably a spaghetti C code base inherited from the 80's, but I can blame them for not even trying to modernize it and fix some of its more obvious flaws.

      However, when it comes to Java, they seem to be at least doing a reasonable job, definitely a better job than most would have expected. The current la

      • by mark-t ( 151149 )

        You're not so sure they would have done a better job, honestly, I don't know how they could have done any worse.

        Java is nowhere near as popular a programming language as it was before 2010, and for that, you can thank Oracle and their asinine policies. Between trying to tell Google that the Java API is copyrighted and any possible reimplementation of that API is copyright infringement (an allegation that itself would mean that all software that offers any compatibility with another infringes on the for

        • I quite using Virtualbox and MySQL after the Oracle takeover of Sun. A rotten company and an enemy to hobbyist and Foss. Microsoft in comparison which is our old enemy is going the other direction and now including Linux with Windows 10 with WSL2, open sourcing .NET core and porting it to Linux and giving away visual studio code to Linux and making our lives easier rather than harder and suing. I updated my app stack and want I want to learn appropriately.

          Oracle can take a hike

    • Java was already on the decline until Android came along to extend its life by several more years, but the decline has resumed since there are alternatives now.
  • By Moore's Law, computers become twice beefier every 1.5-20 years. Which means, today's systems are 1024 times bigger, than 15-20 years ago. And, indeed, they are — faster processors, higher core-counts, bigger caches.

    But the "computing experience"? Can you claim, it improved even 100 times since then? Where did the awesome hardware improvements go?

    The answer is, programmers — and sysadmins — have taken the bulk of it for themselves:

    • Memory-management is hard, let's go with garbage-collecto
    • The "programming is hard, let's go shopping" mentality is definitely worth criticizing, but choosing LLVM in Rust as your target for critique doesn't make sense. LLVM is a compiler back-end, specifically designed for that purpose. They couldn't have re-invented that wheel easily. It's a highly respected piece of software, and integrating it into a new systems language makes perfectly good sense.

      If you want to criticize 3rd party code, you should have gone after the kind of linking that JavaScripters do.

      • Re: (Score:3, Insightful)

        by mi ( 197448 )

        LLVM in Rust as your target for critique doesn't make sense. LLVM is a compiler back-end, specifically designed for that purpose

        Using LLVM is fine. Bundling it into your own source-release is what I'm criticizing. Rust-maintainers should say: "You need LLVM (of at least this version)". Instead, they bundle a version with Rust's own sources...

        Remember that time a one-line "library" broke a huge number of web sites?

        That target is too easy. Also, someone would jump in with the "solution" of insisting on a par

    • Arrays of characters are so non-mnemonic — let's have a "string" type. And make it immutable!

      OK, but it's been decades since I've seen strings cause any kind of memory or performance issue. They just aren't big enough to worry about unless they are in a tight loop, and it would be weird if you are building strings in a tight loop.

      • by mi ( 197448 )

        They just aren't big enough to worry about unless they are in a tight loop

        Suppose, you need to process a multi-gigabyte CSV file to change commas produced by one legacy application into semicolons required by another.

        When your strings are immutable, you must build a new output string for every input one, copying the data you just read into one place of memory into another. When they are just arrays of characters, you can run through your memory switching the characters in place. My C-program doing this is 3

        • 3 or 4 times slower than C is remarkably speedy for a Python program. You must have done a nice job writing it.
          • by mi ( 197448 )

            Like I say, the initial implementation was about 7 times slower. Then, after I wrote it in C, I tried to bring the Python one closer — doubling the throughput by foregoing the csv module.

            3 or 4 times slower than C is remarkably speedy for a Python program

            Yes, and that's the bigger point — using Python requires, at least, 3-4 times faster computers than using C. Or, a minimum of 4 years of hardware developments :(

            • Oh, my point was that the choice of constant strings is not really the problem, if it only slowed things down 3 to 4 times compared to C. That's already faster than I would expect anything in Python to run, so it's not the string constants slowing things down, it's just Python.
        • If you need mutable byte arrays, Python has them.

          Most modern languages have settled on immutable strings for many good reasons.

  • Mcroservices are all the rage right now and on AWS you can use java but it has a fairly lengthy startup time for its VM on a microservice, about 4 seconds, which is an eternity for a microservice.
    For AWS you can also use .NET, javascript and pytthon.
    I'm also seeing it being used by recent graduates for actual service development. That seems a bit of a reach to me but they've made it work. (although it's error prone on their part and using java would've caught a lot of their issues they've had but the error

    • by swilver ( 617741 )

      It must be doing a tad more than that, because a JVM can already do useful work within one second of launching it, as evidenced by actually writing a program that prints some text and seeing how long it takes to run it.

      If you're doing anything more, than you'll need to compare apples with apples.

      Also, micro services won't be the rage that much longer. I think a much better rule of thumb is one service (at a time) per team of developers you employ. Companies that delude themselves in thinking they're gonn

    • I'm assuming you're talking about Lambda for REST endpoints, anyone who's ever done that will tell you it's a terrible idea.
      • by lgw ( 121541 )

        Lambda is fine. It had some issues the first year or so after it launched, but they were on top of it. Adding Python was a great follow-up, too. But then, I expect good things from a dev team that flies a Knights of the Lambda Calculus flag in their office (the Yin and Yang with lambda and Y, centered in a skull).

        What's not fine is to build an "architecture" for your service by stringing a dozen lambdas together with message queues and DDB triggers to handle a single call. Once things get that complicat

        • I've only used Lambda for 15 or so projects but I've regretted it every single time.
          • by lgw ( 121541 )

            Oh? What, specifically? I've never had a problem using it for simple, one-step things (at least, not after the first year it was out).

  • Popularity != good (Score:4, Insightful)

    by cjonslashdot ( 904508 ) on Saturday June 13, 2020 @08:20PM (#60180502)

    In 1965 Wondrbread was the most popular brand of bread.

    And "Friends" is one of the most popular TV shows of all time, even though it is one of the stupidest.

    Guido van Rossum, creator of Python, wrote, "I've learned a painful lesson, that for small programs dynamic typing is great. For large programs, you have to have a more disciplined approach. And it helps if the language actually gives you that discipline, rather than telling you, 'Well, you can do whatever you want.' "

    • by mark-t ( 151149 )

      What are you talking about? Friends wasn't on the air in 1965!

      No argument from me about it being one of the stupidest shows of all time, however.

    • Guido van Rossum, creator of Python, wrote, "I've learned a painful lesson, that for small programs dynamic typing is great. For large programs, you have to have a more disciplined approach. And it helps if the language actually gives you that discipline, rather than telling you, 'Well, you can do whatever you want.' "

      Back in the day, Python was competing with Perl in the scene of scripting languages. These were not intended for larger projects, where something like C or C++ would be more typical. Of these two P's, Python was portrayed as the disciplined approach: it was meant to provide one, clean way of doing something vs. Perl's "there's always one more way to do it". Of course, the present discussion is in a different context, but it's still interesting to see Python painted as the messy alternative, by no other than

      • Yes, Python is certainly cleaner than PERL. PERL is powerful, but it does not lend itself to creating well organized code. Python does, but alas it is hard to maintain too. The main problem is knowing what a method returns - I have spent hours trying to decipher Python methods to figure out if they return an object or an array of objects - simply because the method doesn't have to explicitly say what it returns.

        One nice thing about Python is it is really easy to learn. Thus, novice programmers can pick it u

  • Of these generic language based surveys or estimates do we actually need? It was interesting when it was perhaps once a year, now it feels every Tom, Dick, and Harry is doing it multiple times a year all of which are making it to the front page of Slashdot.
  • Comment removed based on user account deletion
    • by west ( 39918 )

      Surveys like this are like best-seller lists. A *real* best-seller list (i.e. one that literally shows which book titles are selling best) consists of 8 "Chicken Soup for the xx Soul" and some other titles that are boring as all get out. No one wants to read about that.

      A "best seller" list of programming languages is like that. I don't want to know which languages are most used. I can just look around for that.

      No, I want to be entertained by an article that shows "What do other programmers *think* shoul

  • > If your country's government replaced your courts with AI, would you trust it? The results were:
    >
    > Probably not (26%)
    > Definitely not (24%)

    Wow. That's a lot of AI programmers.

  • If your country's government replaced your courts with AI, would you trust it? Well, this question would be very different is two words were added. Replace "courts with AI" to "courts with open source AI" and I believe the percentages would be very different indeed.
  • JetBrains is a Russian company, registered in Czechia for legal reasons.
  • Also interesting were the answers to the question: If your country's government replaced your courts with AI, would you trust it? The results were:

    Probably not (26%)
    Definitely not (24%)
    Maybe (26%)
    Probably yes (20%)
    Definitely yes (5%)

    So 51% of developers, at a minimum, are idiots.

I've noticed several design suggestions in your code.

Working...