Professional C# .NET developer, React and TypeScript hobbyist, proud Linux user, Godot enthusiast!

https://blog.fabioiotti.com
https://github.com/bruce965

  • 0 Posts
  • 60 Comments
Joined 3 years ago
cake
Cake day: March 9th, 2022

help-circle
  • Well… that would make sense. But it’s much much easier to just do it preemptively. The browser API to check how much memory is available are quite limited afaik. Also if there are too many elements the browser will have to do more work when interacting with the page (i.e. on every rendered frame), thus wasting slightly more power and in a extreme cases even lagging.

    For what it’s worth, I, as a web developer, have done it too in a couple occasions (in my case it was absolutely necessary when working with a 10K × 10K table, way above what a browser is designed to handle).




  • bruce965@lemmy.mltoLinux@lemmy.mlWhat's with the cross?
    link
    fedilink
    English
    arrow-up
    4
    ·
    2 months ago

    For reference, this is what the “Checking for Updates” page on the Pop!_OS store looks like for me. This icon feels out of place, that’s why I assumed this is a placeholder that replaced the correct icon that went missing due to some kind of minor problem with my installation.






  • You should install Rethink and see how much garbage your phone constantly transmits and receives. And this is not even a kernel-level firewall, so who knows how much data Google actually exfiltrates…

    I don’t know about a constant audio stream, nor about keywords, but I noticed that Google Keyboard sends out some data every time you type anything. It’s not even that subtle.





  • I am not sure… in the case I’m referring to, they were lagging also when scrolling. But it was React, so native browser rendering. And they were actually very large tables, so we had to do some funny things like viewport culling (see react-window).

    For what it’s worth I’ve never had any similar performance issues with tables in Flutter (web with the canvas-based render engine, not Android) when applying the same culling technique, they just ran fine at any resolution. Different hardware, though, so it’s not an apple to apple comparison.

    In any case just to be safe I would personally assume less pixels = less work = less power = more battery life. My opinion is very unscientific though.




  • Good separation between business logic and UI without effort, cross-platform UI in any language, possibility to turn it into a web-accessible service in the future, great choice of UI frameworks and battle-tested components if you decide to go for a web framework and language.

    As an example of a successful software that followed this approach: Synchthing. All versions run a local web service in the background. The Desktop version just opens a browser on the index page. The Android version is a native app that calls the exposed REST API on localhost, bypassing the web UI.

    As an example of a much more complex software, albeit not FOSS: EasyEDA. It’s a web software, but it also comes as a desktop app (which I never tried) which I assume is not much more than a frame for the web view.

    My recommendation: write the UI with React on Vite in TypeScript, and write the business logic in your general purpose language of choice (mine would usually be C#).