Nitter thread from Julio Merino on application responsiveness in early 2000’s Windows computers versus modern Windows computers. Videos available in linked thread.

Please remind me how we are moving forward. In this video, a machine from the year ~2000 (600MHz, 128MB RAM, spinning-rust hard disk) running Windows NT 3.51. Note how incredibly snappy opening apps is.

Now look at opening the same apps on Windows 11 on a Surface Go 2 (quad-core i5 processor at 2.4GHz, 8GB RAM, SSD). Everything is super sluggish.

For those thinking that the comparison was unfair, here is Windows 2000 on the same 600MHz machine. Both are from the same year, 1999. Note how the immediacy is still exactly the same and hadn’t been ruined yet.

  • catacomb@beehaw.org
    link
    fedilink
    English
    arrow-up
    7
    ·
    1 year ago

    I don’t know how some developers manage it. I’ve written web apps in React and, without even using available optimisations, the UI is acceptably snappy on any modern desktop.

    We inherited an application from another vendor (because of general issues with the project) and it’s just S L O W. The build is slow and takes several minutes, the animations are painful and even the translations are clearly not available for the first 5 seconds.

    My question is, how? I’m not an expert, I generally suck at frontend and I just had to fill in for it. I didn’t purposely write optimised code, the applications are similar in the amount of functionality they provide and they both heavily use JavaScript. How do you make it that slow?

    • AnarchoYeasty@beehaw.org
      link
      fedilink
      English
      arrow-up
      4
      ·
      1 year ago

      Overuse of the spread operator and creating functions inside of functions are two of the biggest culprits of performance issues in modern is

      • catacomb@beehaw.org
        link
        fedilink
        English
        arrow-up
        2
        ·
        1 year ago

        Yeah, the spread operator is heavy. Admittedly, one iteration of our software abused it and still seemed to run ok. We didn’t end up changing that for performance reasons and it was more about code complexity. I wonder how excessive you have to get?