tux snipes-hesitation

you are viewing a single comment's thread
view the rest of the comments
[–] 49 points 6 hours ago (9 children)

We are in the beginning of a huge dark age for software development.

With stackoverflow and forums dead, a whole generation untrained, LLM-companies about to crash in the coming years, local models self-poisoning and going out of date. Deslopping all the garbage that is currently getting piled onto the entire infrastructure is going to be a slow thankless and almost entirely self-imposed waste of time.

  • source
  • hideshow 9 child comments
  • [–] 1 point 4 minutes ago

    I actually think we're at the tail end of the current decade long dark age. The barrier to "can't use photoshop on linux because adobe is an asshole and also costs $200/year" could be gone next year. There is a vibe coded multi-platform rust clone that you might say is 50% done and already has optimistic reviews from real photoshop users. many walled gardens and enshitified apps are at risk now.

    silicon valley style tech companies want to use LLMs to ship you walled garden ball and chain slop as fast as possible, paying as few workers as possible, to steal the highest margins from the working class as possible.

    the open source community wants to use LLMs to ship the safest, most privacy respecting, and otherwise highest quality software possible.

    the LLMs themselves do not force you to ship low quality code. it's your choice to engage in solid engineering principles or not.

  • source
  • parent
  • [–] 25 points 4 hours ago* (7 children)

    In high profile projects like the Linux kernel, probably yeah but I think people are vastly overstating the quality of the code the average developer writes and also their overall knowledge and skill level, I've seen some shit early in my career where looking back on it now I wish I was reading AI slop, and this was software that earned millions a year.

    Fact is a lot of important code that a lot of people depended on has always been kinda shit and yet it worked because there was enough manpower to keep it clanking on.

  • source
  • parent
  • hideshow 7 child comments
  • [–] 4 points 49 minutes ago (2 children)

    This notion of “quality of output” misses something important though, which I think our economic system predisposes us to ignore.

    I think most of us have this concept that the function signature of “working on code” is something like:

    implement(spec): CodeChanges;
    

    But I think this hides some stateful side-effects. There’s a monadic thing going on here, and I think it’s really more like:

    implement(knowledge, spec): [CodeChanges, KnowledgeBundle];
    

    …where KnowledgeBundle is a whole bunch of things: latent info about how things currently work, obviously, but also the yet-unnamed missing abstractions you noticed, the existing named abstractions that are starting to strain — basically the sense of the trajectory of the codebase.

    Even really shitty programmers get some sense of the trajectory of the codebase, but this is something that even the best frontier models fail at.

    Tangent:

    I saw a pretty cool visualization of Kalman filters the other day (substantially AI-generated, coincidentally), and I thought it matched something about this dynamic.

    If you’re only concerned about the “next step”, aka “quality of output”, your error will accumulate and you’ll drift over time. You need to be able to evaluate where you are, so you can correct that error and stay on course. And to do that, you need to be present inside of the code and feel where the pain points are, or your estimation will be so far off that it’s useless.

    I think our economic focus on “output” and our obliviousness to internal states (or even denial that they exist at all) is going to make it very easy to fall into the trap of taking a long series of next steps that individually look very sensible, but over time accumulate unmitigated error and drift towards disaster.

  • source
  • parent
  • hideshow 2 child comments
  • [–] 10 points 2 hours ago

    Youre right about quality but the problem isn't just code quality, its also the sheer volume of code and its unmaintainability. Quality has always been pretty low in commercial software, but there were practical limits to how much of it could be created, and with enough labor thrown at testing and maintenance, as you say it clanked on.

    When it's easier to just generate a whole new page in the UI than fix bugs or make usability improvements though, when it's easier to generate a whole new separate app than to introduce a new feature into the existing one, and when completely nontechnical people are running around doing this stuff without understanding the consequences, risks, etc. I think its very fair to describe it as a dark age. Large parts of the industry and the world are already there in the thick of it, and it is bad.

    Social structures will adapt but that won't bring back the old way of doing things or reduce reliance on AI, if anything it will entrench it further, until/unless costs become prohibitive

  • source
  • parent
  • [–] 10 points 2 hours ago (2 children)

    I don't know how things in the industry are now, but back in my day you didn't deploy a Microsoft product until the second service pack had been released. Trusting software to be reliable and secure was always a no no.

  • source
  • parent
  • hideshow 2 child comments
  • [–] 5 points 1 hour ago (1 child)

    Yeah, computer tech used to be real dogshit back in the day. Everyone waxes poetic about Windows Xp but if we’re actually being honest, Windows 11 blows it out of the water

  • source
  • parent
  • hideshow 1 child comment