1. 16
  1.  

  2. 1

    I wanted to get the feel for the architecture and stumbled upon this. If you didn’t follow the latest developement around web technologies very closely, this sums it up relatively nicely, so that’s why I’m sharing it.

    On a personal note, it’s unfortunately already too late for web industry to stop reinventing the wheel. We should have never gone down this path, but since that already happened, I guess Wasm could somewhat simplify (and optimize) the technology stack in the long run. Not to the levels where it should optimally be, but at this point any improvement counts. We’ll see.

    1. 2

      What pre-existing wheel do you think the web industry should have used? How would it “simplify (and optimize) the technology stack… to the levels where it should optimally be”?

      1. 2

        What pre-existing wheel do you think the web industry should have used?

        That would easily make a content for an entire article, but in a nutshell. The main argument for moving software to web was that, as far as I remember, users wouldn’t have to install anything: all they had to do was to click a link, no matter which computer they used.

        I don’t see why there couldn’t be “app stores” for the same purpose. Instead of sending http:// links, you’d send an app:// link. Upon clicking on that link, the app could be downloaded and immediately executed – just as web apps do. VM-based languages already existed (Java, Python); sandboxing native binaries would be another option. The technology wasn’t (and isn’t, because it’s not used for that purpose) perfect and could certainly use some gradual improvement, but it would have been a better investment.

        Instead, we witnessed adoption of a new language (and a family of languages that aim to replace it) that ultimately, together with other things, lead to a major increase in web browsers’ complexity. And it mostly happened so that people didn’t have to manually download and run dubious unsandboxed *.exe files (or worse, installers).

        How would it “simplify (and optimize) the technology stack… to the levels where it should optimally be”?

        I know it’s not possible (nor intended) now, but if browsers eventually drop support for JavaScript and only support Wasm, it would simplify the VM. You don’t have to care about the language above it, just about the bytecode. And perhaps while that happens, the entire architecture could be modularized so that it’d be easier to use the same VM in other browsers or outside of browsers. In the end, it could be even developed separately from the browsers.

        I could also imagine something similar happening with HTML, but that seems a little far fetched.

        All of this is obviously a pure speculation on my part, but there’s not much else to do: IT is not really a technical/engineering discipline; rather, it’s driven by emotions and trends. “Try this language, it looks so cool! And have you seen this CLI? It will make you feel like a true hacker! It even uses escape sequences to color some of its output to green! And check out this API, where you can pass a function to a function and it calls your function and makes your code more beautiful! Awesome!”. This line of thinking is more representative of the forces behind what happens in IT than any actual technical reasons.