Yes to all the above, actually. Using Electron as an example, applications are often >100MB in size, consume >100MB memory on the low end, & (subjectively) perform badly enough that I can easily feel and perceive the delay between interaction-response.
Embedding an entire web browser is the software equivalent of shipping a tiny part in a 2 foot cube box, or putting three layers of non-recyclable packaging on vegetables.
Storage might be cheap, but storage you already have is free. I have a drawer full of old hard drives - all perfectly functional, but not useful because software footprint has exploded in recent years. Embedding a full web browser isn't the only offender, of course - the various types of container systems are another.
And that's without mentioning deployment: It's easy to take a fast, high-quality always-on internet connection for granted, but there are many, many people who don't have that, or use mobile plans with strict data limits.
Why no? Not every machine is your 32GB RAM machine… If it has to run on a slower machine… say a raspberry pi with a slow flash drive and a slow external drive accessed over USB… being much smaller means speed.
> Lack of computing power or RAM? No.
Why no? Yes.
We have had multitasking operating systems for a while now. Electron apps are tolerable because they are few. If every single application was done with electron, it'd be worse than windows95 on a 486.
They still sell lots of computers with 8GB of RAM, although I'm sure your one has at least 2x, probably 4x as much.
> Then?
Then, with incorrect assumptions you can reach any result that you desire, but it is meaningless.
> If it has to run on a slower machine… say a raspberry pi with a slow flash drive and a slow external drive accessed over USB
This runs a web browser no problem. No need for 32GB of RAM
It'd be hard to find some hardware today that runs Qt and not a web browser that's significantly cheaper (and will just make your development costs higher)
Electron is an issue but nobody is using that for embedded
> Then, with incorrect assumptions you can reach any result that you desire, but it is meaningless.
Just because you have access to powerful hardware doesn't mean others have as well. They have perfectly fine and adequate computers, until we started wrapping everything in electron.
Now they have to spend their hard-earned money, and contribute to global electronic waste and resource consumption issues, just to be able to participate in society and save face.
It's exactly your attitude that is at the root of this crisis.
Qt is not bad but it's also not as good as Electron. It doesn't look native (unless you're myopic), it's slower than native, it's quirky, it's buggy... it's cross-platform on paper because when you manage to build your app on another platform you'll see half of it doesn't work well... and on top of that, it costs money. A lot of money. No wonder it lost.
On one hand I understand it's good to have competition. On the other, I'm happy that bad solutions lose. That's the way of the market.
Why bring Electron? Qt doesn't look exactly native, and it is a bit slower than native, but Electron doesn't look native at all and is much slower.
Qt is kind of a middle ground between low level / native frameworks and web based interfaces like Electron.
And in the majority of the cases, it doesn't cost money. The open source version is LGPL, which means you can use it for free in proprietary software as long as you allow the user to modify the Qt library you are using (usually, in means dynamic linking).
That's one way of looking at it, but remember that Electron is better and free even if you don't release your code. On mobile, you have Flutter, React Native... In this situation, why would anybody want to go with Qt, unless they have an existing, legacy codebase? Who's starting new projects in Qt?
Electron is better if your only metric to evaluate quality is "can I use it in my proprietary product?".
I work in a company that uses electron. The amount of time the UI guys spend to reimplement things that are already in Qt is incredible (for example a portable tray icon, menus, tabbing).
Yes we are saving money on license (but spending probably much more on developers reimplementing things).
> Who's starting new projects in Qt?
People who want portability and are aware that not everybody has 32GB of RAM like their overly expensive developer machine?
People that do not feel like reimplementing things that have existed for ages is fun?
People who do open source and do not have to pay for a license, and thus have no reason to "save money" and use electron?
I second this. On the projects where I work,
I see a lot of 117 reinventions of square wheels,
with their accompanying bugs, for things like
multi-column lists, scroll, selection models, and drop-downs.
And I know we used to have those things as built-in
standard-widgets, where you had to put in extra effort, in order to F them up.
I have an open bug registered on the aurelia framework
concerning virtual scroll sometimes breaks when you reach the edges.
The answer from the maintainer could be translated to
"the guys who understood this code is no longer here".
I tried to figure it out from the source code, and came to the same
conclusion.
It's as if, ever since we got a full set of widgets available on
desktops, we have been busy re-inventing them from scratch in other idioms
(notably in the HTML DOM.)
This. It is incredibly easy to underestimate the functionality in a fully-fledged widget set, especially once you factor in accessibility integrations. UI development is 10% shiny, 90% edge-case.
The EU doesn't have a tech sector and is therefore very happy to destroy the services from other countries with stupid regulations. This is pretty clear after the cookie banners.
Used to happen to me with some sites, what I did was 1) remove all the history of that domain so typing re<enter> would google "re" instead of autocompleting to reddit.com and 2) adding reddit.com to my ad blocker so I couldn't visit it at all.
If you keep your phone's browser on private mode, this becomes a lot easier! (Long as you don't have any old bookmarks for that site.)
Combined with DuckDuckGo's !bang notation—since you no longer have autocomplete for visited sites—you can still get to useful places like wikipedia quickly.
Unfortunate side-effect is that by staying logged out everywhere, with no cookies, means you'll see every single "log in with gmail!", "use the app for a better experience" dark pattern popup, unless your adblocker covers annoyances.
The Spanish words carro, carreta, coche, carretilla, carrito all mean "something that has wheels on it", but the meaning keeps changing between car, horse drawn carriage, baby stroller, shopping cart, horse drawn cart or toy car between countries.
Fortunately it's easy to figure out from context and doesn't have possible misunderstandings as the Spanish word for straw.