I find it far easier to believe that Qt and GTK have fallen behind rather than the whole world is under a grand delusion and didn't know Qt exists.
I find it far easier to believe that Qt and GTK have fallen behind rather than the whole world is under a grand delusion and didn't know Qt exists.
For colour, I'll add: it was a fairly old application first developed before QML/Qt Quick. It was also a multiplatform desktop application; then and now it's unclear to me as to whether or not Qt Quick is especially suitable for desktop applications.
We'd been in the process of moving chunks of it into an HTML/JS web view for several years - I think when that decision was first made it was well before QtQuick would've been sufficient for desktop usage. Other reasons we were doing it, besides the aforementioned bugs/quirks/limitations were that it's easier (and cheaper) to hire web devs than native devs, and that it allowed for code/infrastructure/design reuse with our web frontend. QML doesn't address either of those issues.
Admittedly, I haven't tried QML in anger, but I also feel like...given the quality of the rest of the framework, which is comparatively mature, it'd be pretty shocking to me if it didn't have its own slew of bugs/quirks/limitations.
I use an old 2008 iMac running Linux frequently and it runs remarkably well. Firefox and MS Edge are certainly the apps that bring it down from a memory perspective ( it only has 6 Gigs ). Electron apps like MS Teams are right up there though and make it chug even more than the browsers do.
To be fair, I have dozens of tabs open including beasts like GMail but I certainly have to restart the browsers from time to time.
Compiling huge C++ code bases is a memory nightmare as well.
I started with C++, did that for about 5 years, then got sucked into web where I've been for about 20 years. In a funny turn of events, my company has adopted C++ and now I'm writing C++ again. I don't hate it, but 15 minutes to compile/boot a server or 5 minutes to run some tests is kind of unpleasant. And the occasionally UB bug or dangling pointer. It's just really outdated. Enough so that I don't want to relearn how to build a GUI in C++. I'll wait a few more years for Zig or Carbon to mature.
Yes, but things they're counting as "best" include considerations other than performance and resource usage. Not that they're wrong in doing so -- everything's a tradeoff, after all, and engineering is mostly about selecting tradeoffs.
But as a user, Electron apps tend to be pretty bad, and so from my point of view, Electron is as well. I tend to avoid them as a result. But my point of view as a user is very narrow.
Use ccache and clang. Also, with Linux you can set ZRAM and convert these 6GB in something like 9-10GB.
But then I'd be reaching way less people than with the web. My web apps can be tried without installing anything, work on mobile and tablets and on any desktop (except may be cool weirdos using iMac g4s).
The web allows me to reach more people; if I'm working on apps that help make the world a better place (or so I think), that feels more important than the RAM they use (even though using more RAM might be driving more e-waste, thus also making the world a bit worse on that count.)
Not unless the company is penny-pinching when it comes to developer PCs.
Virtually every company and developer opts for simpler development and worse runtimes. Is that "wrong"? I'm not sure how to answer that. You could probably make a case either way.
Not to mention half the users here rally against EVs, public transport, and probably own an F150. The environment only matters when we are talking about a 1w savings with election vs qt.
Both of these would be using less power with more efficient software.
But no, lets excuse shitty practices that could save a lot (over the entire userbase) for relatively little effort because it doesn't solve everything.
That, imo, is totally unacceptable (also, financially not optimal).
I've had people tell me that the "developer productivity gains" of using Python totally justifies the circa 10 X electricity usage + 10 X hosting/cloud costs. (Yes, developers cost a lot, but the hypothesis that Python/other slow languages result in so much higher developer productivity is a questionable assertion -- especially, in contrast to languages like Kotlin, Go, etc.)
At least with backend software there is a financial incentive for efficient software. For client software there is no incentive unless there is actual competition, of which there is often effectively none as in the user cannot choose better software because interopability is not a thing.
Whether this is "right" or "wrong" is a difficult question to answer.
Many people on HN either don't understand or don't care for trading off runtime performance and other technical qualities for other things like e.g. development speed, DX, easier hiring, etc.
No matter how much we deny it! :D
Electron would be okay for them and their users on account of that.
Most people on HN understand those tradeoff very well but also understand that those tradeoffs are being optimized for the company's profit and not for the good of society overall. Without meaningful competition (and for Discord that would mean interopable clients, not just alternate chat applicaitons with their own servers) the incentive for making more efficient software is ~0.
Would it be surprising to find that they were? It's not like developers have a lot of credibility.
That said, the cost really is extreme. So much so that there is an ongoing effort to remove Qt from our products entirely. There is general agreement among the devs that the cost is not justified by the benefits, and nobody can remember why it was chosen in the first place.
All that said, I like Qt. It's quite capable and you can produce decent, portable UIs with it. But I agree it's too expensive to justify.
Looking at the rest of the comments I see that Qt core is free, but the rest of it isn't.