• Writing the actual code is the easy part. Thinking about what to write and how to organize it so it doesn’t become spaghetti is the hard part and what being a good developer is all about.

      • Question is: how many developers are actually good? Or better, how many produce good results? I wouldn’t call myself a great programmer, just okayish, but I certainly pushed code I knew was absolute garbage, simply because of external pressure (deadlines, legacy crap, maybe just a bad day,…).

      • I’m more of a mechanical engineer than a coder, and for me it’s been super helpful writing the code. The rest of our repo is clear enough that even I can understand what it actually does by just reading it. What I’m unfamiliar with are the syntax, and which nifty things our libraries can do.

        So if you kinda understand programs but barely know the language, then it’s awesome. The actual good programmers at my company prefer a minimal working example to fix over a written feature request. Then they replace my crap with something more elegant.

    • It would probably mean the amount of coding work that companies want done would multiply 10 fold as well. I’m sure the content of the work developers do will change somewhat over time (analogous to what happened during the industrial revolution), but I doubt they’re all out of a job in the near future.

      • Where I’m really not sure is, what percentage of the software written today actually needs human work?

        I mean, think about all the basic form rendering, inputs masks, CRUD apps. There’s definitely a ton of work in them and they’re widely used, but I’m pretty sure that a relatively basic AI-assisted framework could recreate most of these apps with hardly any actual coding. Sure, it won’t be super efficient or elegant, but let’s be honest: nobody cares about that, if they’re good enough.

        Just look at Wix, Wordpress, Squarespace etc. Website builders basically imploded the “low effort” web design market. Who would pay hundreds for a website made by a human, if you can just click together something reasonably good looking in 2h?

        • There’s definitely a ton of work in them and they’re widely used, but I’m pretty sure that a relatively basic AI-assisted framework could recreate most of these apps with hardly any actual coding

          Any shop that’s not incompetent switched to using frameworks for that stuff 10-20 years ago, so there’s hopefully very little work left there for the AI.

          Even at a company where it’s a massive amount, that company “benefitting” from AI, really just managed to defer their “use a framework” savings 20 years late.

  • We do this every 15 years. For anyone less than 15 years into their career, welcome to the party.

    Let’s see if I can save you some energy:

    • Yes, it made my job massively easier.
    • No, it didn’t replace me.
    • Yes, it allowed a bunch of new people to also do the job I do. Welcome newbies!
    • No, my salary didn’t go down, relative to inflation.

    It turns out that the last mile to a successful product delivery is still really fucking hard, and this magic bullet tool also didn’t solve that.

    Now… Am I talking about…?

    • AI?
    • Web frameworks?
    • English like programming language syntax?
    • A compiler with built-in type checking?
    • All of the above.

    Edit: Formatting for readability.

    • No, my salary didn’t go down, relative to inflation.

      I’m calling bullshit on that one.

      Everybody’s salary except executives has gone down relative to inflation going all the way back the the 80s.

      • Not mine. Every year if I don’t get a “cost of living” increase that meets or exceeds inflation, I go complain about it to my boss who then negotiates with HR on my behalf and I get a bigger raise. I’m not gonna let inflation kill my salary, and my boss is not gonna risk me leaving for another company. I do wish they would just give it to me up front and stop making me ask each year. We all know what the outcome is gonna be.

          • I’m not saying that the average wage in the country has not fallen against inflation. Data indicates that it has. But what I’m saying is that In the tech industry, if you provide good value to your company and the managers have half a brain, you should be able to negotiate annual raises to AT LEAST match inflation. If your company won’t, consider moving to a new company.

            I know this is a privilege that most workers do not have, but this thread is about jobs in tech, where this is a more common case. It’s also one of the reasons why the aren’t more unions.

      • This got passed around as a common fact in the wake of the 2008 financial crisis. Wages from the early 70s through 2010 or so were flat (not negative, but flat) due to inflation. Things have shifted since then.

        https://fred.stlouisfed.org/series/LES1252881600Q

        Note that the graph shows median wage; it isn’t as affected by a few high earners as average wage would be. The 2010s were a period of relatively low inflation and wages had a chance to catch up a bit.

        What is true is that productivity has leaped massively since the 70s, but median wages have only crept up somewhat. The argument needs to shift to be around how the working class was screwed out of their share of productivity improvements. That’s not likely to change until we have more unions and overall something closer to Socialism.

      • Two mitigating factors for me:

        1. For many years my skillet expanded faster than inflation ate away at my pay. I’ve been in a high demand specialty (Cybersecurity) for awhile.
        2. I’m now a manager, which does come with extra pay. Perhaps more importantly, it puts me in a position to throw my weight around to get my team and myself better raises.
  • lol, I’d love to see the fucking ruin of the world we’d live in if current LLMs replaced senior developers. Maybe it’ll happen some day, but in the meantime it’s job security! I get to fix all of the bugfuck crazy issues generated by my juniors using Copilot and ChatGPT.

    • One of my uni lecturers does the whole “You are out of a job” thing. He’s a smart guy but he’s barley written a line of code in his life. This comes up frequently and everytime I ask him “Get CHATGPT to write fizz buzz in X86 ASM.” Without fail it will crash when trying to build everytime. This technology is very advanced but I find people get it to the the simplest tasks and then expect it to solve the most complex ones.

      • I tried using AI tools to do some cleanup and refactoring of some legacy embedded C code and was curious if it could do any optimization or knew any clever algorithms.

        It’s pretty good at figuring out the function of the code and adding comments, it did some decent refactoring of some sections to make them more readable.

        It has no clue about how to work in a resource constrained environment or about the main concepts that separate embedded from everything else. Namely that it has to be able to run “forever”, operate in realtime on a constant flow of sensor data, and that nobody else is taking care of your memory management.

        It even explained to me that we could do input filtering by using big arrays to do simple averaging on a device with only 1kB RAM, or use a long long for a never-reset accumulator without worrying about what will happen because “it will be years before it overflows”.

        AI buddy, some of these units have run for decades without a power cycle. If lazy coders start dumping AI output into embedded systems the whole world is going to get a lot more glitchy.

        •  wewbull   ( @wewbull@feddit.uk ) 
          link
          fedilink
          English
          88 months ago

          This is how AI is a threat to humanity. Not because it will choose to act against us, but because people will trust what it says without question and base huge decisions on faulty information.

          • A million tiny decisions can be just as damaging. In my limited experience with several different local and cloud models you have to review basically all output as it can confidently introduce small errors. Often code will compile and run, but it has small errors that can cause output to drift, or the aforementioned long-run overflow type errors.

            Those are the errors that junior or lazy coders will never notice and walk away from, causing hard to diagnose failure down the road. And the code “looks fine” so reviewers would need to really go over it with a fine toothed comb, which only happens in critical industries.

            I will only use AI to write comments and documentation blocks and to get jumping off points for algorithms I don’t keep in my head. (“Write a function to sort this array”) It’s better than stack exchange for that IMO.

    • I had to pull aside a developer to inform him that he “would be” violating our national security by pasting code online to an AI and that there were potentially repercussions far beyond his job.

      He’s a lot slower now, but the code is better.

    1. People vastly overestimate the abilities of AI.
    2. Developers vastly overestimate their own abilities.
    3. There are people on any level of seniority that would be perfectly replaced by a noise generator.
  • It literally cannot come up with novel solutions because it’s goal is to regurgitate the most likely response to a question based on training data from the internet. Considering that the internet is often trash and getting trashier, I think LLMs will only get worse over time.

  • Being a programmer is a lot like being a tradesperson. A tradesperson has a lot of flexibility in what they can do. They can work for a company, work freelance, or start their own business.

    Programming gives you the same flexibility, the most important bit being that you can do it for yourself.

    AI is going to struggle with larger complex tasks for a long time coming. While you can go to it and say ‘write me a script to convert a png to a jpg’ you can’t go to it and say ‘Write me a suite of tools to support business X’ or ‘make me a fun and creative game’ A good programmer isn’t going to be out of work for a long time.

  • Who do they think will be using the AI?

    AI threatens to harm a lot about programming, but not the existence/necessity of programmers.

    Particularly, AI may starve the development of open source libraries. Which, ironically, will probably increase the need for employed programmers as companies accrue giant piles of shoddy in-house code that needs maintaining.

      • The amount of code I’ve seen copy-pasted from StackOverflow to do things like “group an array by key XYZ”, “dispatch requests in parallel with limit”, etc. when the dev should’ve known there were libs to help with these common tasks makes me think those devs will just use Copilot instead of SO, and do it way more often.

        • I think that undersells most of the compelling open source libraries though. The one line or one function open source libraries could be starved, I guess. But entire frameworks are open source. We’re not at the point yet where AI can develop software on that scale.

          • I agree wholeheartedly, and I think I failed to drive my point all the way home because I was typing on my phone.

            I’m not worried that libs like left-pad will disappear. My comment that many devs will copy-paste stuff for “group by key” instead of bringing in e.g. lodash was meant to illustrate that devs often fail to find FOSS implementations even when the problem has an unambiguously correct solution with no transitive dependencies.

            Frameworks are, of course, the higher-value part of FOSS. But they also require some buy-in, so it’s hard to knock devs for not using them when they could’ve, because sometimes there are completely valid reasons for going without.

            But here’s the connection: Frameworks are made of many individual features, but they have some unifying abstractions that are shared across these features. If you treat every problem the way you treat “group by key”, and just copy-paste the SO answer for “How do I cache the result of a GET?” over and over again, you may end up with a decent approximation of those individual features, but you’ll lack any unifying abstraction.

            Doing that manually, you’ll quickly find it to be so painful that you can’t help but find a framework to help you (assuming it’s not too late to stop painting yourself into a corner). With AI helping you do this? You could probably get much, much farther in your hideous hoard of ad-hoc solutions without feeling the pain that makes you seek out a framework.

    • I think there will be (and there already have been) significant downsizing over the next few years as businesses leverage AI to mean the same work can be done by less people paid less.

      But the job cannot go away completely yet. It needs supervision by someone that can see the bullshit it often spits out and correct it.

      But, if I’m honest, software development seems to be targeted when I think design writers should be equally scared. Well, that is if businesses work out that AI isn’t just chatgpt. A GPT or other LLM could be trained on a company’s specific designs and documentation, and then yes designers and technical writers could be scaled right back too.

      Developers are the target because that’s what they see chatgpt doing.

      In real terms a lot of the back office jobs and skilled writing and development jobs are on the line here.

      • The work can’t be done by someone paid less. The work can be done by highly skilled, experienced developers with fewer junior resources. The real death comes 60 years later when there are no more developers because there is no viable path to becoming a senior.

        Technical writers you may be correct about because translating text is one is the primary use cases for AI.

        • Here’s the thing. Pay for work isn’t based on skill alone. It’s scarcity of a given demographic (skill makes up just part of that).

          If the number of people overall is cut for software development worldwide, then scarcity at all levels will reduce and I reckon that will reduce pay.

          I think our pay will start to diminish.

      •  kibiz0r   ( @kibiz0r@midwest.social ) 
        link
        fedilink
        English
        2
        edit-2
        8 months ago

        My pessimistic take is that everyone in society will get recast as the “human feedback” component of whichever flavor of ML takes over their domain.

        8 hours a day of doing your domain’s equivalent of captchas.

        • That’s a worst case. I think at the moment at least gpt type ai isn’t good enough yet to not be used as a tool.

          But yeah with some improvements we’ll end up being quality control for automated systems.

    •  wewbull   ( @wewbull@feddit.uk ) 
      link
      fedilink
      English
      38 months ago

      Who do they think will be using the AI?

      Well that’ll be junior developers, until they get hauled over the coals for producing highly repetitive code rather than refactoring out common themes.

  • Any gains from LLM now would barely offset the complexity bloat introduced in enterprise applications in the last decade alone. And that’s not even taking into account the sins of the past that are only hidden behind the topsoil lair of cargo cult architecture.

  •  Ilflish   ( @Ilflish@lemm.ee ) 
    link
    fedilink
    5
    edit-2
    8 months ago

    Still bizarre to hear this. It’s like they think the CEOs are gonna write a prompt. “Link customer data to visualization” and it’s gonna preemptively collect the info and then create useful insight for their future products which will then be made by the AI

  • We had an ai demo at work last Friday where we just were showing off a local running llm with some test input. Best part was the demonstrator had it output something unexpected and they were like “I’ve ran this twenty times and it has never said that”. Lol. We’re alright but it’s incredibly useful already it’s pretty exciting.