I got the first prototype version of the code for the project I’m currently working on. It is an Arduino Sketch, that contains 1k lines, stores every single Value needed as a global Variable and every function reads and writes to these global variables, instead of taking them in as parameters. This code is so bad, that I refuse to even look at it. The effort to take the existing codebase and transform it into something useable is as high as rewriting it from scratch.

When telling my colleague that his code is absolute garbage, he just told me “its not my code, Claude did it”. I am constantly pushing towards implementing the project in a proper way, but it has been nothing but fights against people who don’t know how to code and who refuse to acknowledge that ignoring any standards of maintainable code does not turn out in the end and it makes sense to rewrite the project sooner than later.

  • SayCyberOnceMore@feddit.uk
    link
    fedilink
    English
    arrow-up
    8
    ·
    1 hour ago

    You’re gonna need some top-down support there.

    Get some coding(& documentation?) guidelines agreed with a manager (I’d hope there were some already) and then it’s not 1:1 opinions, it’s now “Best” Practice.

    But, keep it high level… rather than just going in anti-AI and having more resistance, have the structure there that enforces what you want; local variables (& no emojis for variable names), comments are / not required, etc. and then they could still use Claude, but their output would have to match what you’re after.

    Good Luck

    • ivan@piefed.social
      link
      fedilink
      English
      arrow-up
      3
      ·
      edit-2
      59 minutes ago

      I teached embedded programming for a while and students were to find out that AI often failed miserably at our tasks.

      And the funny thing is that when I tried it myself to see if it’s that bad at given tasks - I explained the task like I would explain to a student, and actually got a decent result - readable comprehensive code with meaningful comments. It all simply comes down to the fact that AI won’t really help you if you can’t do without it. So I double that making the guy pass some guidelines on styling the code to Claude should at least make the code less shit to debug.

    • da_cow (she/her)@feddit.orgOP
      link
      fedilink
      arrow-up
      2
      ·
      edit-2
      38 minutes ago

      The problem is, that there is no management. I’m working on a small team of 4 people and I am the only person that knows now to code. The rest just asks Claude and doesnt bother as long as it works.

      Im also an advocate of moving the project to an RTOS, which would mean a complete rewrite, but for now they are still quite eager at fighting that.

      For now I will just do the minimum required work to maintain this mess and rewrite everything from scratch in the meantime, because we will have to do it anyway at some point.

      I will definitely talk to them about some minimum coding standards.

  • CrypticCoffee@lemmy.ml
    link
    fedilink
    arrow-up
    4
    ·
    edit-2
    55 minutes ago

    Frustrating.

    I would not say garbage. It is rude. But make clear it is not fit for purpose. Insist that code has to be maintainable and that code has tight coupling. “If I wanted Cluade to write everything, we could hire less devs, but you are trusted because the organisation wants high quality, so please rewrite it as it will not be approved so this work is not done.”

  • ivan@piefed.social
    link
    fedilink
    English
    arrow-up
    5
    ·
    1 hour ago

    My friend had an old colleague that was maintaining one project for decades. Grandpa sadly kicked the bucket at some point and friend inherited that project - tens of thousands of lines of Assembly. 🌝

  • locuester@lemmy.zip
    link
    fedilink
    English
    arrow-up
    1
    ·
    47 minutes ago

    Have you tried having a frontier model redo it in a coding standard that you prefer? You can do that by simply asking it.

    Dont knock it til ya try it.

    • da_cow (she/her)@feddit.orgOP
      link
      fedilink
      arrow-up
      2
      ·
      33 minutes ago

      No way am I going to trist AI on rewriting that. The entire underlying structure is so bad that feeding that into an AI model and tasking it with making a decent code structure out of it will very probably not work the way I want it to. AI is a tool that excels at small isolated tasks, but under no circumstance do I allow it to create the outline of my project.

      • glibg10b@lemmy.zip
        link
        fedilink
        arrow-up
        1
        ·
        edit-2
        8 minutes ago

        If you break it into simple tasks, it’s not that bad. For example, for each function, ask it to add reference parameters for the global variables used by that function, and to modify the call site accordingly

        With tasks this small, you’re not asking the LLM to think for you, you’re just using it to automate a boring task

        Once that’s done, seeing each function’s interface should make it easier for your brain to identify what further refactoring is needed