At least there was a distinction between web of documents (WWW) and shipped apps with custom canvas. Rendering apps with web’s DOM is stupid. It makes websites a mess and relies on everyone using the same monoculture of browsers (like we now have Chromium, WebKit and Gecko, all nearly identical).

If browser does not support one feature (like CSS’s transform), the whole house of cards breaks. It’s like making ASCII art in notepad and then expecting everyone to use the same notepad app with the same font and style, to not break our art proportions.

We need to split web into websites and webapps, with webapps being browser dependent or full custom canvases and websites being immutable human-readable and editable format.

  • grue@lemmy.world
    link
    fedilink
    arrow-up
    2
    ·
    edit-2
    1 year ago

    AJAX is a JavaScript specific technology, Java applets had access to full network stack so it could do whatever it wanted in this regard.

    Java applets had access to the full network stack, so you could use REST style calls or RPC styled network calls if you wanted. Java applets also had native RPC capability (with network being transparent), perhaps that’s what you mean.

    That’s why I said “AJAX-style” and not “AJAX.” Although it would’ve been technically possible to do whatever kind of communication they wanted, folks hadn’t really thought of trying to stream parts of the app itself after the rest of it was already running the way they do with javascript stuff. You had to wait for the entire .jar to download before it would start, when what it really needed was the ability to download a little stub .jar, start running, and then stream classes on the fly as you accessed them.

    • severien@lemmy.world
      link
      fedilink
      arrow-up
      1
      ·
      edit-2
      1 year ago

      folks hadn’t really thought of trying to stream parts of the app itself after the rest of it was already running the way they do with javascript stuff.

      It kinds of seems like you have some confusion in the terminology. AJAX doesn’t mean streaming the app parts dynamically, it’s just client-server request controlled by JavaScript, originally used mostly to pull/post data, not code (the X means XML). Lazy loading application parts is a newer concept mainstreamed by SPAs / bundlers and can be done with AJAX/XHR or other means (injecting script tags or await import).

      You had to wait for the entire .jar to download before it would start, when what it really needed was the ability to download a little stub .jar, start running, and then stream classes on the fly as you accessed them.

      As mentioned above, a native support to do that was baked into Java since 1.0. It’s possible some applets even used that. Those that didn’t - their problem. But this practice wasn’t really common in JS apps of that time either (apps weren’t typically SPAs, but still).