• I Cast Fist
    link
    fedilink
    English
    arrow-up
    7
    ·
    11 months ago

    The trick is in not using javascript where you don’t need it, which would cut 95% of all its use around the interwebs

    • FooBarrington@lemmy.world
      link
      fedilink
      arrow-up
      1
      arrow-down
      1
      ·
      11 months ago

      I don’t agree completely - there are a lot of things that are possible without JavaScript, which are improved either due to better UX or improved safety through JS.

      Easy examples for better UX is anything to do with forms and multi-step processes. Getting validation errors while typing is massively better than getting them on submit, and it’s easy to store temporary edit states locally to prevent data re-entry. This especially goes for offline-first applications.

      IMO more importantly, local JS is always preferable to server-side logic when possible, since it means your data never leaves your browser. Imagine a JSON formatter that processes data server-side - you can never be sure what they are doing with your data! Compared to that local JS is incredibly portable (every platform has a browser) and isn’t reliant on anything else. I build my utility apps both in the usual bundler way, and as single files - meaning I can offer my app as a single HTML file you can download and use however you want.

      Of course the security benefits aren’t perfect - it’s always possible data is still sent somewhere. I really hope that one day we’ll get an API that allows a website to limit further network connections to specific URLs. This would give users of such applications real peace of mind.

      • I Cast Fist
        link
        fedilink
        arrow-up
        5
        arrow-down
        1
        ·
        11 months ago

        When all I want to do is read content, no JS is needed. That has been a solved problem for decades. UX is problematic because now you have these huge PC screens and comparatively tiny mobile screens to account for. Most developers go for mobile first and completely ignore the rest, so you have loads of sites that are needlessly displayed like slow powerpoint presentations, autoscrolling to the next anchor because that’s “good UX” somehow.

        Form validation with JS goes back decades and no one in their right minds relies entirely on frontend validation. It’s great because it can be immediate, but it’s easier to sidestep either by accident or on purpose. Since a lot of forms nowadays are “autogenerated” from their respective UI libraries, they come with a lot of unnecessary cruft.

        meaning I can offer my app as a single HTML file you can download and use however you want

        I sure hope that doesn’t need a “local server” of any sort to work. It’s one of the things that baffles me the most, javascript that only works with a npm server to connect to. I also hope it’s not bundled as an electron app, what’s the point of having an entire chrome browser bundled just to run a single page?

        • FooBarrington@lemmy.world
          link
          fedilink
          arrow-up
          1
          arrow-down
          1
          ·
          edit-2
          11 months ago

          When all I want to do is read content, no JS is needed.

          I didn’t say otherwise.

          UX is problematic because now you have these huge PC screens and comparatively tiny mobile screens to account for. Most developers go for mobile first and completely ignore the rest, so you have loads of sites that are needlessly displayed like slow powerpoint presentations, autoscrolling to the next anchor because that’s “good UX” somehow.

          Okay? I’m not sure what you’re arguing against. Some websites have bad UX, and that means the technology used to implement that bad UX is in itself bad?

          Form validation with JS goes back decades and no one in their right minds relies entirely on frontend validation.

          I didn’t say anyone should rely entirely on frontend validation.

          It’s great because it can be immediate, but it’s easier to sidestep either by accident or on purpose. Since a lot of forms nowadays are “autogenerated” from their respective UI libraries, they come with a lot of unnecessary cruft.

          Again, what exactly are you arguing for or against? You said “don’t use JavaScript when you don’t need it”. You don’t need frontend validation, it’s a nice to have, but it would be incredibly stupid to say “this form is way better without frontend validation”.

          I sure hope that doesn’t need a “local server” of any sort to work. It’s one of the things that baffles me the most, javascript that only works with a npm server to connect to. I also hope it’s not bundled as an electron app, what’s the point of having an entire chrome browser bundled just to run a single page?

          No, the single HTML file I’m talking about doesn’t require a server or Electron or anything besides a browser. What are you on about?

          You either seem to be willfully misunderstanding me, or you’re projecting a bunch of random webdev grievances onto me. Why?