• GreenShimada@lemmy.world
    link
    fedilink
    arrow-up
    199
    arrow-down
    3
    ·
    2 months ago

    For anyone unsure: Jevon’s Paradox is that when there’s more of a resource to consume, humans will consume more resource rather than make the gains to use the resource better.

    Case in point: AI models could be written to be more efficient in token use (see DeepSeek), but instead AI companies just buy up all the GPUs and shove more compute in.

    For the expansive bloat - same goes for phones. Our phones are orders of magnitude better than what they were 10 years ago, and now it’s loaded with bloat because the manufacturer thinks “Well, there’s more computer and memory. Let’s shove more bloat in there!”

    • GamingChairModel@lemmy.world
      link
      fedilink
      arrow-up
      24
      ·
      2 months ago

      Jevon’s Paradox is that when there’s more of a resource to consume, humans will consume more resource rather than make the gains to use the resource better.

      More specifically, it’s when an improvement in efficiency cause the underlying resource to be used more, because the efficiency reduces cost and then using that resource becomes even more economically attractive.

      So when factories got more efficient at using coal in the 19th century, England saw a huge increase in coal demand, despite using less coal for any given task.

      • Quetzalcutlass@lemmy.world
        link
        fedilink
        English
        arrow-up
        12
        ·
        2 months ago

        Also Eli Whitney inventing the cotton gin to make extracting cotton less of a tedious and backbreaking process, which lead to a massive expansion in slavery plantations in the American South due to the increased output and profitability of the crop.

      • shrugs@lemmy.world
        link
        fedilink
        arrow-up
        1
        ·
        2 months ago

        This happens not only with efficiency gains. There is risk overcompensation, which feels kinda the same. Cars that are more secure cause reckless driving, which in turn is the reason accidents happen more often, which eat into the safety gains.

    • frunch@lemmy.world
      link
      fedilink
      arrow-up
      14
      ·
      2 months ago

      I always felt American car companies were a really good example of that back in the 60s-70s when enormously long vehicles with giant engines were the order of the day. Why not bigger? Why not stronger? It also acted as a symbol of American strength, which was being measured by raw power just like today lol.

      This also reminds me of the way video game programmers in the late 70s/early 80s had such tight limitations to work within that you had to get creative if you wanted to make something stand out. Some very interesting stories from that era.

      I also love to think about the tricks the programmer of Prince of Persia had employed to get the “shadow prince” to work…

      https://www.youtube.com/watch?v=sw0VfmXKq54

  • bampop@lemmy.world
    link
    fedilink
    arrow-up
    90
    arrow-down
    2
    ·
    2 months ago

    My PC is 15 times faster than the one I had 10 years ago. It’s the same old PC but I got rid of Windows.

  • mlg@lemmy.world
    link
    fedilink
    English
    arrow-up
    72
    ·
    2 months ago

    The modern web is an insult to the idea of efficiency at practically every level.

    You cannot convince me that isolation and sandboxing requires a fat 4Gb slice of RAM for a measly 4 tabs.

    • kalpol@lemmy.ca
      link
      fedilink
      arrow-up
      15
      ·
      2 months ago

      It is crazy that I can have a core 2 duo with 8 gig of RAM that struggles loading web pages

  • OctopusNemeses@lemmy.world
    link
    fedilink
    English
    arrow-up
    59
    ·
    2 months ago

    I’m pretty sure the “unused RAM is wasted RAM” thing has caused its share of damage from shit developers who took it to mean use memory with reckless abandon.

    • ThePantser@sh.itjust.works
      link
      fedilink
      English
      arrow-up
      19
      ·
      2 months ago

      Would be nice if I could force programs to use more ram though. I actually have 100GB of DDR4 my desktop. I bought it over a year ago when DDR4 was unloved and cheap. But I have tried to force programs to not be offloading as much. Like Firefox, I hate that I have the ram but it’s still unloading webpages in the background and won’t use more than 6GB ever.

    • iglou@programming.dev
      link
      fedilink
      arrow-up
      4
      ·
      2 months ago

      In most cases, you either optimize the memory, or you optimize the speed of execution.

      Having more memory means we can optimize the speed of execution.

      Now, the side effect is that we can also afford to be slower to gain other benefits: Ease of development (come in javascript everywhere, or python) at the cost of speed, maintainability at the cost of speed, etc…

      So, even though you dont always see performance gains as the years go, that doesn’t mean shit devs, it means the priority is somewhere else. We have more complex software today than 20 years ago because we can afford not to focus on ram and speed optimization, and instead focus on maintainable, unoptimized code that does complex stuff.

      Optimization is not everything.

      • mnemonicmonkeys@sh.itjust.works
        link
        fedilink
        English
        arrow-up
        2
        ·
        2 months ago

        unoptimized code that does complex stuff.

        You can still have complex code that is optimized for performance. You can spend more resources to do more complex computations and still be optimized so long as you’re not wasting processing power on pointless stuff.

        For example, in some of my code I have to get a physics model within 0.001°. I don’t use that step size every loop, because that’d be stupid and wasteful. I start iterating with 1° until it overshoots the target, back off, reduce the step to 1/10, and loop through that logic until I get my result with the desired accuracy.

        • iglou@programming.dev
          link
          fedilink
          arrow-up
          1
          ·
          2 months ago

          Of course! But sometimes, most often even, the optimization is not worth the development to get it. We’re particularly talking about memory optimization here, and it is so cheap (or at least it was… ha) that it is not worth optimizing like we used to 25 years ago. Instead you use higher level languages with garbage collection or equivalents that are easier to maintain with and faster to implement new stuff with. You use algorithms that consume a fuck ton of memory for speed improvements. And as long as it is fast enough, you shouldn’t over optimize.

          Proper optimization these days is more of a hobby.

          Now obviously some fields require a lot more optimization - embedded systems, for instance. Or simulations, which get a lot of value from being optimized as much as possible.

          • mnemonicmonkeys@sh.itjust.works
            link
            fedilink
            English
            arrow-up
            1
            ·
            2 months ago

            Unfortunately, a lot of dev studios tend to just build their games on the highest end systems they can and don’t bother checking for lower-end hardware. For a lot of systems, there’s plenty of programs that don’t run “good enough”. And sometimes I’ll even have issies with M$ applications on decent workstation hardware. Notes and Teams are frustratingly slow to work with sometimes

  • kunaltyagi@programming.dev
    link
    fedilink
    arrow-up
    57
    arrow-down
    1
    ·
    2 months ago

    The same? Try worse. Most devices have seen input latency going up. Most applications have a higher latency post input as well.

    Switching from an old system with old UI to a new system sometimes feels like molasses.

    • Buddahriffic@lemmy.world
      link
      fedilink
      arrow-up
      11
      ·
      2 months ago

      Except for KDE. At least compared to cinnamon, I find KDE much more responsive.

      AI generated code will make things worse. They are good at providing solutions that generally give the correct output but the code they generate tends to be shit in a final product style.

      Though perhaps performance will improve since at least the AI isn’t limited by only knowing JavaScript.

  • Whitebrow@lemmy.world
    link
    fedilink
    arrow-up
    50
    ·
    2 months ago

    I still remember playing StarCraft 2 shortly after release on a 300$ laptop and it running perfectly well on medium settings.

    Looked amazing. Felt incredibly responsive. Polished. Optimized.

    Nowadays it’s RTX this, framegen that, need SSD or loading times are abysmal, oh and don’t forget that you need 40gb of storage and 32gb of ram for a 3 hour long walking simulator, how about you optimize your goddamn game instead? Don’t even get me started on price tags for these things.

    Software and game development is definitely a spectrum though, but holy shit is the ratio of sloppy releases so disproportionate that it’s hard to see it at times.

    • Einskjaldi@lemmy.world
      link
      fedilink
      arrow-up
      12
      ·
      2 months ago

      Then factorio dev blog comes in and spend months optimizing the tok of one broken gear in the conveyor belt to slightly improve efficiency.

    • chunes@lemmy.world
      link
      fedilink
      arrow-up
      4
      ·
      2 months ago

      Absolutely. Every time I play a game from before 2016 or so it runs butter smooth and looks even better than modern games in many cases. I don’t know what we’re doing nowadays.

  • AeonFelis@lemmy.world
    link
    fedilink
    arrow-up
    36
    arrow-down
    1
    ·
    2 months ago

    Thought leaders spent the last couple of decades propaganding that features-per-week is the only metric to optimize, and that if your software has any bit of efficiency or quality in it that’s a clear indicator for a lost opportunity to sacrifice it on the alter of code churning.

    The result is not “amazing”. I’d be more amazed had it turned out differently.

    • SanicHegehog@lemmy.world
      link
      fedilink
      arrow-up
      24
      ·
      2 months ago

      Fucking “features”. Can’t software just be finished? I bought App. App does exactly what I need it to do. Leave. It. Alone.

    • ChickenLadyLovesLife@lemmy.world
      link
      fedilink
      English
      arrow-up
      16
      ·
      2 months ago

      It’s kind of funny how eagerly we programmers criticize “premature optimization”, when often optimization is not premature at all but truly necessary. A related problem is that programmers often have top-of-the-line gear, so code that works acceptably well on their equipment is hideously slow when running on normal people’s machines. When I was managing my team, I would encourage people to develop on out-of-date devices (or at least test their code out on them once in a while).

      • AnyOldName3@lemmy.world
        link
        fedilink
        arrow-up
        3
        ·
        2 months ago

        Premature optimisation often makes things slower rather than faster. E.g. if something’s written to have the theoretical optimal Big O complexity class, that might only break even around a million elements, and be significantly slower for a hundred elements where everything fits in L1 and the simplest implemention possible is fine. If you don’t know the kind of situations the implementation will be used in yet, you can’t know whether the optimisation is really an optimisation. If it’s only used a few times on a few elements, then it doesn’t matter either way, but if it’s used loads but only ever on a small dataset, it can make things much worse.

        Also, it’s common that the things that end up being slow in software are things the developer didn’t expect to be slow (otherwise they’d have been careful to avoid them). Premature optimisation will only ever affect the things a developer expects to be slow.

      • AeonFelis@lemmy.world
        link
        fedilink
        arrow-up
        3
        ·
        2 months ago

        It’s kind of funny how eagerly we programmers criticize “premature optimization”, when often optimization is not premature at all but truly necessary.

        I will forever be salty about that one time I blamed of premature optimization for pushing to optimize a code that was allocating memory faster than the GC could free it, which was causing one of the production servers to keep getting OOM crashes.

        If urgent emails from one of the big clients who put the entire company into emergency mode during a holiday is still considered “premature”, then no optimization is ever going to be mature.

  • DontRedditMyLemmy@lemmy.world
    link
    fedilink
    arrow-up
    32
    arrow-down
    1
    ·
    2 months ago

    I hate that our expectations have been lowered.

    2016: “oh, that app crashed?? Pick a different one!”

    2026: “oh, that app crashed again? They all crash, just start it again and cross your toes.”

    • wabasso@lemmy.ca
      link
      fedilink
      English
      arrow-up
      4
      ·
      2 months ago

      I’m starting to develop a conspiracy theory that MS is trying to make the desktop experience so terrible that everyone switches to mobile devices, such that they can be more easily spied on.

  • merc@sh.itjust.works
    link
    fedilink
    arrow-up
    20
    ·
    2 months ago

    You do really feel this when you’re using old hardware.

    I have an iPad that’s maybe a decade old at this point. I’m using it for the exact same things I was a decade ago, except that I can barely use the web browser. I don’t know if it’s the browser or the pages or both, but most web sites are unbearably slow, and some simply don’t work, javascript hangs and some elements simply never load. The device is too old to get OS updates, which means I can’t update some of the apps. But, that’s a good thing because those old apps are still very responsive. The apps I can update are getting slower and slower all the time.

    • ssfckdt@lemmy.blahaj.zone
      link
      fedilink
      arrow-up
      20
      ·
      2 months ago

      It’s the pages. It’s all the JavaScript. And especially the HTML5 stuff. The amount of code that is executed in a webpage these days is staggering. And JS isn’t exactly a computationally modest language.

      Of the 200kB loaded on a typical Wikipedia page, about 85kb of it is JS and CSS.

      Another 45kB for a single SVG, which in complex cases is a computationally nontrivial image format.

    • NecroParagon@midwest.social
      link
      fedilink
      arrow-up
      4
      ·
      2 months ago

      I can’t update YouTube on my iPad 2 that I got running again for the first time in years. It said it had been 70,000~ hours since last full charge. I wanted to use it to watch videos on when I’m going to bed. But I can’t actually login to YouTube because the app is so old and I seemingly can’t update it.

      I was using the web browser and yeah I don’t remember it being so damn slow. It’s crazy how that is.

      • merc@sh.itjust.works
        link
        fedilink
        arrow-up
        1
        ·
        2 months ago

        I have an old YouTube app on my iPad, and it still works fine. One of the more responsive apps on the device. I get nagged nearly every time I use it to update to the newest YouTube release, but that’s impossible. I’d first have to upgrade my OS, and Apple no longer releases new OSes for this generation of iPads. So, I’m stuck with an old YouTube, which mostly works fine, and an occasional nag message.

        I’m sure within a year or two mine will be like yours and YouTube will simply no longer work. But, for now it’s in a relatively good spot where I can use a version of YouTube designed for this particular hardware that doesn’t feel sluggish.

  • ZILtoid1991@lemmy.world
    link
    fedilink
    arrow-up
    19
    ·
    2 months ago

    They often are worse, because everything needed to be an electron app, so they could hire the cheaper web developers for it, and also can boast about “instant cross platform support” even if they don’t release Linux versions.

    Qt and GTK could do cross platform support, but not data collection, for big data purposes.

  • ssfckdt@lemmy.blahaj.zone
    link
    fedilink
    arrow-up
    15
    ·
    2 months ago

    The program expands so as to fill the resources available for its execution

    – C.N. Parkinson (if he were alive today)