• bleistift2@sopuli.xyz
    link
    fedilink
    English
    arrow-up
    8
    arrow-down
    1
    ·
    edit-2
    17 days ago

    We’ve been adding mountains of JS to “feel” fast, while making everything slower.

    I disagree that that is a bad thing. I’m not providing evidence here, so disagree if you wish. In my opinion, users don’t care if something is fast. They don’t take out stopwatches to time the page transitions. They care if something feels fast. They want the web page to react immediately when they issue an action, and have the impression that they’re not waiting for too long. Feeling fast is way more important than being fast, even if the feeling comes at a performance hit.

    It takes about 120ms for a human to detect (not react to) a stimulus [1] (For the gamers: That’s 8FPS). So if you page responds to a user action in that time frame, it feels instantaneous.

    If you want to try it yourself, paste this code into your browser console. Then click anywhere on the page and see if the delay of 125ms feels annoying to you.

    let isBlack = true;
    document.body.addEventListener('mousedown', () => {
      setTimeout(() => {
        document.body.style.backgroundColor = isBlack ? 'red''black'
        isBlack = !isBlack
      }, 125)
    })
    

    [1] https://pmc.ncbi.nlm.nih.gov/articles/PMC4374455/

    • LordKitsuna@lemmy.world
      link
      fedilink
      arrow-up
      3
      ·
      17 days ago

      No i want it to actually be fast, and stop using unholy amounts of ram for basic tasks. I am not pulling out a stopwatch you are correct but when I try to use one of my still perfectly functional but older systems I can feel the effects of all this JavaScript bullshit.

    • rdri@lemmy.world
      link
      fedilink
      arrow-up
      3
      arrow-down
      1
      ·
      17 days ago

      I dunno. As a user, if you throw me a code that takes 120ms for my CPU to execute, and tell me there is an alternative that takes 2x-3x less time, I would look for someone who provides that instead.