• @mPony
    link
    English
    61 day ago

    “constantly add more stuff that relatively few people want or need, and require everyone to buy new hardware to support it.”

    This shouldn’t surprise anyone. Windows, Apple and Android, and the companies that develop software that run on Windows, Apple, and Android, have all fallen into the habit of writing unoptimized, bloated code. Replacing a phone or a tablet because it “got old” is the norm now. We all know the only thing in phones and tablets that consistently get old are the batteries, the hardware is almost always fine, but the OSs and the software constantly get upgraded to the point where we don’t even keep track of the version numbers anymore (when was the last time you looked at the version number of Firefox?) A 6-year-old tablet is effectively junk because everything that used to run on it has been “upgraded” so many times. It’s like trying to run Crysis on a 486.

    • @[email protected]
      link
      fedilink
      English
      2
      edit-2
      1 day ago

      This shouldn’t surprise anyone. Windows, Apple and Android, and the companies that develop software that run on Windows, Apple, and Android, have all fallen into the habit of writing unoptimized, bloated code

      Same goes for anyone who develops software that runs on Linux or more importantly, the Web. Unless we’re talking about command line utilities, which truly are bloatless. But they’re that way on MacOS too.

      The issue is that 99% of the time you want your user interface to be graphical, and you want it to run on multiple platforms, unless you’re a Windows-only shop (realistically the only operating system you can afford to have as the ONLY target). But every OS has different libraries and frameworks for native GUI, so your options are Web technologies and either run it in the browser or package it in Electron, or a cross-platform native GUI framework. Those inevitably have worse performance than truly platform-native code, but not as bad as Electron. Inevitably, everything is running on Electron because it’s just easier to take your existing web app and repurpose it for desktop via Electron than develop two separate apps. And the web app itself, without Electron, is already shit. Why is it shit? Because Javascript is shit, the DOM is shit, everything is shit. We’ve been adding more and more and more to tech from the 1990s. It keeps growing in complexity and we’re just doomed.

      Maybe WASM will fix parts of this, but at present time you can’t write a full web application in WASM without any Javascript involved. And you still have the DOM, and probably CSS, etc… All of which just suck ass.

      Now, you CAN write an efficient UI in pure Javascript, maybe using jQuery, but not a big framework like React or Vue… But then you’ll find out duplicating so much work, it’ll take 3-5x as long to ship the product.

        • @[email protected]
          link
          fedilink
          English
          17 hours ago

          Haven’t had a chance to use it much tbh, I mostly work in backend development. I’d deeply prefer it to Electron for my personal ideological reasons (which is that running “native” apps in a browser is stupid), but I hear it’s not recommended for web, so you’d still have to develop two or three versions (depending on how feasible it is to keep desktop and mobile on the same codebase - I’m not sure on that). Still, it’s more reasonable than doing the desktop versions in Qt in this day and age, because C++ is just a recipe for footgunning yourself. This is of course negated by having significant C++ experience, in which case Qt is the way to go.