• geolaw@lemmygrad.ml
    link
    fedilink
    English
    arrow-up
    7
    ·
    2 months ago

    I feel like this is a dumb question but why do web engines need constant development? I thought we had an established standard for HTML. Once a web engine matches that standard isn’t that sufficient?

    • Laura@lemmy.ml
      link
      fedilink
      arrow-up
      12
      ·
      2 months ago

      some reasons that I can think of:

      • performance improvements (e.g. JIT)
      • new standards (e.g. WASM)
      • vulnerabities
      • new features (e.g. web engines weren’t always sandboxed)
    • Bitrot@lemmy.sdf.org
      link
      fedilink
      English
      arrow-up
      6
      ·
      edit-2
      2 months ago

      HTML used to be a pretty set standard, maintained by the W3C. HTML5 was retired in 2018 (5.2 in 2021). Now it is a Living Standard that changes often and is maintained by a consortium of browser vendors.

      It is also not the only technology being changed.

    • utopiah@lemmy.ml
      link
      fedilink
      arrow-up
      6
      ·
      2 months ago

      Some of the new features most people aren’t aware of us that I used recently :

      • WebXR, make a Web page immersive and work in the browser of VR/AR headsets, e.g Meta Quest, Lynx XR1, Apple Vision Pro, etc
      • WebBlueTooth, connect to a BT device, e.g a Lego controller in order to move actuator, data from sensors, etc
      • WebUSB, connect a device and update its firmware, e.g SmartWatch, mechanical keyboard, etc
      • GamePad API, use a gamepad or joystick to play from a browser window
      • Realms in JavaScript for “better” sandboxing, it’s a relatively new feature of the language so the engine must be updated

      So… sure none of that really helps to read a 2D Web page (like this one on Lemmy) but they pretty much all help to achieve better cross-platform support. By using the Web rather than native to connect to hardware then it is instantly delivered without having any OS specific driver to build and install. Practically speaking it does make the browser increasingly complex but IMHO it is worth it.

      PS: I probably also used some modern CSS so there also the engine (which is ridiculously complex by the way) has to be updated too.

        • utopiah@lemmy.ml
          link
          fedilink
          arrow-up
          1
          ·
          2 months ago

          AFAICT that’s correct for WebBluetooth indeed, as it’s only implemented by Chromium (and thus all browsers relying on it) but for but for WebUSB https://wicg.github.io/webusb/ it’s still being discussed at the W3C level so even though not standards (which I don’t think W3C even produce, only API specifications, e.g HTML isn’t a standard whereas Bluetooth is) thus allowing others to possibly implement it.

          To clarify Firefox is my main browser, but (sadly) for those very specific cases I’m relying on Chromium (WebXR on standalone XR devices, even now Wolvic switching to Chromium as a backend).

          It’s an important point as by doing this Google is pushing for it’s own set of technologies and is pushing for it’s own engine which comes with a lot of business (namely ads) related “feature” e.g Manifest v3 that aren’t good for privacy.

          That is also interesting to consider on “why” a browser keeps on evolving, i.e having the most “advanced” browsers does give an edge and pushes competition away.

          • Possibly linux@lemmy.zip
            link
            fedilink
            English
            arrow-up
            2
            ·
            2 months ago

            From a security and privacy stand point webUSB and web Bluetooth seem very bad. We already see webRTC and webGL being abused.

    • 𝘋𝘪𝘳𝘬@lemmy.ml
      link
      fedilink
      arrow-up
      2
      ·
      2 months ago

      established standard for HTML

      That is constantly changing.

      Like CSS or JS, or other modern web technologies nowadays browsers are capable of.

    • Cyclohexane@lemmy.mlM
      link
      fedilink
      arrow-up
      2
      ·
      2 months ago

      There are features that constantly get added. It’s not only HTML (maybe the html part is stable, I don’t know), but there’s CSS and most importantly JavaScript.

      Also, browsers don’t always follow the standard exactly. Some features get added that aren’t in the standard.