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

 



Forgot your password?
typodupeerror
×
Programming AI

Are AI Coding Assistants Really Saving Developers Time? (cio.com) 34

Uplevel provides insights from coding and collaboration data, according to a recent report from CIO magazine — and recently they measured "the time to merge code into a repository [and] the number of pull requests merged" for about 800 developers over a three-month period (comparing the statistics to the previous three months).

Their study "found no significant improvements for developers" using Microsoft's AI-powered coding assistant tool Copilot, according to the article (shared by Slashdot reader snydeq): Use of GitHub Copilot also introduced 41% more bugs, according to the study...

In addition to measuring productivity, the Uplevel study looked at factors in developer burnout, and it found that GitHub Copilot hasn't helped there, either. The amount of working time spent outside of standard hours decreased for both the control group and the test group using the coding tool, but it decreased more when the developers weren't using Copilot.

An Uplevel product manager/data analyst acknowledged to the magazine that there may be other ways to measure developer productivity — but they still consider their metrics solid. "We heard that people are ending up being more reviewers for this code than in the past... You just have to keep a close eye on what is being generated; does it do the thing that you're expecting it to do?"

The article also quotes the CEO of software development firm Gehtsoft, who says they didn't see major productivity gains from LLM-based coding assistants — but did see them introducing errors into code. With different prompts generating different code sections, "It becomes increasingly more challenging to understand and debug the AI-generated code, and troubleshooting becomes so resource-intensive that it is easier to rewrite the code from scratch than fix it."

On the other hand, cloud services provider Innovative Solutions saw significant productivity gains from coding assistants like Claude Dev and GitHub Copilot. And Slashdot reader destined2fail1990 says that while large/complex code bases may not see big gains, "I have seen a notable increase in productivity from using Cursor, the AI powered IDE." Yes, you have to review all the code that it generates, why wouldn't you? But often times it just works. It removes the tedious tasks like querying databases, writing model code, writing forms and processing forms, and a lot more. Some forms can have hundreds of fields and processing those fields along with doing checks for valid input is time consuming, but can be automated effectively using AI.
This prompted an interesting discussion on the original story submission. Slashdot reader bleedingobvious responded: Cursor/Claude are great BUT the code produced is almost never great quality. Even given these tools, the junior/intern teams still cannot outpace the senior devs. Great for learning, maybe, but the productivity angle not quite there.... yet.

It's damned close, though. GIve it 3-6 months.

And Slashdot reader abEeyore posted: I suspect that the results are quite a bit more nuanced than that. I expect that it is, even outside of the mentioned code review, a shift in where and how the time is spent, and not necessarily in how much time is spent.
Agree? Disagree? Share your own experiences in the comments.

And are developers really saving time with AI coding assistants?

Are AI Coding Assistants Really Saving Developers Time?

Comments Filter:
  • It's a tool. (Score:3, Interesting)

    by MrNaz ( 730548 ) on Sunday September 29, 2024 @07:36AM (#64825793) Homepage

    If you try to build a ship with nothing but a welding torch, it won't go well.

    Copilot is excellent. But if you try to make it write ALL your code for you, that code will suck.

    • If you try to build a ship with nothing but a welding torch, it won't go well.

      Copilot is excellent. But if you try to make it write ALL your code for you, that code will suck.

      I am an open-source CMS developer. There's a vast amount of relevant open-source code that the LLM Borg has trained itself on, and the feedback is pretty good. There's no irrelevant open-source code that's been published to the web, Github, or GitLab, it all is pretty much vetted and is valid. Coding by prompt is akin to critically reviewing another developer's code IMHO.

      Technology changes and the market expects developers to keep up in order to compete.

      • There's no irrelevant open-source code that's been published to the web, Github, or GitLab, it all is pretty much vetted and is valid.

        ...in the Framework I use -- I meant to write.

    • by AmiMoJo ( 196126 )

      I tried them out a couple of times and was not all that impressed with the results. Both times the code did at least work, but wasn't particularly good. StackExchange quality stuff, functional but far from ideal.

      In both cases I'd have preferred to re-write it from scratch myself. That would give me a chance to really think through the algorithm and the potential issues with every line, something I find easier when writing code than when reviewing it.

    • by q_e_t ( 5104099 )

      If you try to build a ship with nothing but a welding torch, it won't go well.

      Seemed to work OK for Liberty Ships in WW2...

  • The AI coding assistants are very powerful but right now in 2024, because code itself is very complex typically with hundreds of files in an app, AI is not quite there with a holistic code base (application level) training and output just yet.

    The most productive AI users now are senior developers who can use the AI to both 1. iterate code sections insanely fast 2. actually read the code the guide the AI in the next iterations.

    So TODAY you still have to know what you are doing to leverage AI tools for actua

    • I reckon there'll be worse problems in the longer term, e.g. AI tools may save time for developers if used appropriately, & for experienced developers, it's probably a good idea for routine work that they know inside-out. However, for inexperienced developers, who don't yet have the mastery, in-depth knowledge, & higher-level, more abstract understandings of coding, having a machine do the nitty-gritty for them may inhibit their development since they're not getting the hands-on experience & dev
      • The question of "mastery" is one that requires perspective.
        I'm over 50 and learned data structures and memory management but barely touched assembly in college. 10 years ago, I was told that understanding the difference between "pass by reference" and "pass by value" was rare.
        The point is that "mastery" is having the skills to be productive with the best tools of the time, and that changes. Learning how to get the best results out of AI but not understanding how its output works is just a different layer of

    • The AI coding assistants are very powerful but right now in 2024, because code itself is very complex typically with hundreds of files in an app, AI is not quite there with a holistic code base (application level) training and output just yet.

      This is a problem because the context window of AIs is still very small. A large codebase will overwhelm it. To address that problem, we're going to need new algorithms.

  • ... it kinda works for things people have done over and over again. Writing a CURD-Application in PHP probably works just fine... but then again, why on earth are we doing the same thing over and over again, shouldn't the software environment deal with such trivialities. The far bigger productivity gain would be in using environments that are tailored for the job you are trying to solve. If you have an application with 20 database tables... you shouldn't have to write your CURD-code for each one of them. Th

  • Teaching people how to write crap code is not the quality we should be striving for!

    • Why not? They can then generate the code the next AI will learn from! Circular learning!

      • There is some truth to this. Asking for code in a comparative vacuum is going to render code without context, until the context evolves. This means organizational model training will eventually yield better code because of training and feedback loops into the blackbox which makes code.

        This also permits developers generating their own code-making models to have a companion for their generating efforts over a period of time, then understanding how code relates to a larger model. Isolating lib models to functi

  • Yes (Score:4, Insightful)

    by cascadingstylesheet ( 140919 ) on Sunday September 29, 2024 @08:21AM (#64825861) Journal

    It's a tool. Used properly, it saves tons of time.

    "Rewrite this whole section of code to use OpenStreetMaps instead of Google Maps"

    Could I have done it myself? Sure. In 30 seconds? No ...

    • Could I have done it myself? Sure. In 30 seconds? No ...

      If you think it only took 30 seconds, then you're one of those people leaving introducing 41% more bugs. You need to make sure you understand any code generated by AI...

      • Could I have done it myself? Sure. In 30 seconds? No ...

        If you think it only took 30 seconds, then you're one of those people leaving introducing 41% more bugs. You need to make sure you understand any code generated by AI...

        Gee, we could just assume I'm stupid ... or we could assume that I was talking about the initial writing part, leaving the review and QA as a given.

        In any case, the answer to the titular question is still "yes".

        • Yeah, but you need to add extra time for understanding what the LLM gave you, because it could (and often does) have subtle errors.
  • well, you can't complain about creativity. =/

  • by allo ( 1728082 ) on Sunday September 29, 2024 @08:35AM (#64825889)

    They do not replace the person typing code, but Stackoverflow for looking up (possibly trivial) questions. You have a sidebar where you can just type ("What is the C++ idiom to do ...") and get the answer instantly. Yes, it might be able to apply it to your code, but the answer itself is the important part.

    That's why Stackexchange is trying to lock down their exports (to the displeasure of the community) because they would rather have their user's content (which is CC licensed by their ToS) as their capital and nobody train on it free to use models.

  • It's damned close, though. GIve it 3-6 months.

    I really wonder how they are able to estimate timelines like this. What inside information do they have that we don't? 3 to 6 months? [xkcd.com]

  • It really depends - sometimes there is something relatively simple (but complex to write) that it can spit out correctly. Other times it is just creating new rabbit holes. A good developer should be able to spot if it helps or hurts pretty quickly. An inexperienced one will probably struggle more. Kind of like life before these chatbots.
    • by Hodr ( 219920 )

      But we don't learn by writing perfect code, we learn by fixing problems. If an inexperienced coder leans heavily on AI generated code, but then has to deal with fixing all of the issues generated by that AI, eventually they will no longer be an inexperienced coder.

  • I seem to get that with rabbit... https://leaflessca.wordpress.c... [wordpress.com]
  • As a teacher, and someone who supervises a wide variety of student projects: I do lots of random bits of coding in different languages and using different frameworks and APIs. I cannot possibly keep the details of all of them in my head. ChatGPT is great for reminding me how to do X in language Y or with framework Z. Basically, it is a single source for reference material.

    AIs are not yet very useful at actually writing code, at least, not beyond a trivial level. Just as an example, I had a student last we

  • Make tools for tasks, not the other way around. Can't stand how much IT has turned the basic concept of technology on its ass.
  • Headline says AI didn't save developers time.

    The story itself describes the experience of two companies: Uplevel and Innovative Solutions. Uplevel says they didn't see any gains (and worse bug counts), Innovative Solutions says AI helped them achieve a 2x-3x increase in productivity.

    So the real headline should be "Mixed results" from AI coding assistants.

    This makes me wonder how the study methodologies of the two companies differ, and how their practice--use of AI--differs.

  • What does that mean, exactly? Not all bugs are created equal. Some are serious and consequential, others are more a matter of opinion. Does this higher bug count stem from new (AI) scanning tools?

    This reminds me of why I don't run Lint or ReSharper. Many of the bugs or flaws reported by these tools are accurate, but they are drowned out by a forest of inconsequential (though technically accurate) reported issues, that might or might not be necessary to fix. Many of these are more coding style preferences th

  • I find copilot quite useful and it definitely saves time. Things like auto completing comments, to getting descriptions of a block of code you cant quite get a grip on, To getting advice on how to make a certain change. Its still a long way from "write me a doom clone in rust" but I hope it gets there one day.
  • Use of GitHub Copilot also introduced 41% more bugs, according to the study...

    Let me guess, at least half of those bugs are from bad example code posted on the Internet, or from QUESTIONS rather than answers, you know the "why does this not work?" questions.

    LLMs are an excellent mirror of our world. They will reflect back what we communicated amongst ourselves. If flat earthers weren't a fringe group, the LLM would gladly tell you that the Earth is flat.

    • Yeah, the summary definitely buried the lede. If the use of GitHub Copilot "also introduced 41% more bugs, according to the study", I don't think the important part of the story is how fast it isn't.

  • Yes, that's very specific. Has anybody had success with AI in these areas ? I tried to get clues and solutions to problems with LwIP on STM32 with Chat GPT.
    All I got were :
    1) banalities, small talks.
    2) things I already knew, But not helping, not providing answers to things I don't know.
    3) errors, wrong answers.

    I gave up trying

PURGE COMPLETE.

Working...