this post was submitted on 12 Dec 2023
916 points (98.7% liked)

Programmer Humor

33005 readers
192 users here now

Post funny things about programming here! (Or just rant about your favourite programming language.)

Rules:

founded 5 years ago
MODERATORS
 
you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] 131 points 1 year ago (10 children)

A pile of HTML + JS is the only cross platform GUI toolkit that's practical to deploy.

I'm not really happy about it myself, but realistically there's not any other option than just bundling a website into a wrapper.

And to pre-empt any replies; your proposed solution must support Windows, Linux (X11 and Wayland), MacOS, iPhone, Android, Chromium and Firefox.

[–] [email protected] 39 points 1 year ago (1 children)
[–] [email protected] 42 points 1 year ago (1 children)

3 billion devices can't be wrong!

[–] [email protected] 29 points 1 year ago

Real talk; if Java didn’t have their head up their own arses, it would have been the real solution. But Oracle does what Oracle does.

Do not anthropomorphize Larry Ellison.

[–] [email protected] 19 points 1 year ago

And to pre-empt any replies; your proposed solution must support Windows, Linux (X11 and Wayland), MacOS, iPhone, Android, Chromium and Firefox.

If you are a website, that's easy, you are actually making the correct choice with Electron insofar that you want a browser.

If you're doing an application not a webpage, then we're walking W+L+Mac+Phones, that's more tricky. I'm assuming for a second you want a usable UI (otherwise we'd be using Electron again :P ) so we're talking two applications at least, one for mobile, one for desktop + maybe iPads.

And then it's usually already too pricey to bother:

  • Web frontend devs are far cheaper than application developers.
  • Might as well just do a website, runs in everything. Only need to develop once.
  • Updating is immediate with a website, don't have to do any deployment/upgrade/downgrade plans.
[–] [email protected] 14 points 1 year ago* (last edited 1 year ago) (1 children)

I think Flutter and Avalonia both tick all those boxes.

[–] [email protected] 3 points 1 year ago (1 children)

Does Avalonia support Wayland? Last time I checked it wasn't complete yet.

[–] [email protected] 6 points 1 year ago

Just checked, and unfortunately no, Wayland is still in preview.

[–] [email protected] 8 points 1 year ago (3 children)

Why is Firefox a 'platform'? I'm assuming chromium is for chromeOS devices, but I don't know of any device that just runs Firefox.

[–] [email protected] 20 points 1 year ago

they probably meant web versions of the app that run both on chromium and gecko (firefox) browser engines

[–] [email protected] 6 points 1 year ago

As Communism said, yeah I was ment a web application. No need to spend dev time working on a different version of your app if you can just reuse the web version.

[–] [email protected] 8 points 1 year ago

If you count browser engines, don't forget Webkit.

[–] [email protected] 5 points 1 year ago

Avalonia and Uno Platform if you are working with C#

[–] [email protected] 3 points 1 year ago
[–] b_n 3 points 1 year ago

I know the guy working on makepad is trying to solve this problem along with vr headsets, Apple tv, etc. It's really painful because of dependency bloat messing with build times so he ended up rewriting a bunch of things 🤷‍♂️.

[–] [email protected] 1 points 1 year ago

JUCE is weirdly capable of non-audio related UIs and runs on all these platforms.