Genuine question, why does it matter? Why shouldn't a project choose a production ready method of creating cross platform compatible code to avoid duplication of efforts and cost?
why does it matter?
because most people use more than one program at the same time? fire up that one along with, I dunno, Spotify and Discord and Slack, and suddenly your midrange laptop's RAM is all but gone.
Same thing happens to me if I were to open each of those apps as chrome tabs.
The apps you listed provide a web version also. Adding choice to the customer experience is a good thing!
Adding choice to the customer
"you can have your memory eaten by our website in your browser, or by our website in a separate browser window wearing fake moustache and glasses" doesn't seem to be much of a choice.
meanwhile if you launch their services using something other than a glorified Chrome tab, like spotify-qt or ripcord, they both end up consuming like one tenth of the resources the official clients do.
Why do you think everyone cares to optimize every single ounce of their ram memory. There is a lot more to UX than that.
I would rather an imperfect choice than none at all
That's a bad analogy. A browser with 5 tabs is not like having 5 different browsers open.
User experience is not just about optimizing every little bit of your RAM consumption. They're are plenty of other factors as well
Yes, and UX is bad in web applications. I‘m saying that as a web application developer.
Oh the fact it's cross platform is not the issue, the issue is that Electron sucks. There are better alternatives available like Tauri, yet companies keep using Electron because that's what their developers know and they're afraid to try something new.
If I'm a company and want to bring something to production quickly, what should i choose:
A relatively new tool that has seen barely any production use and thus could have a bunch of unanticipated problems. Also nobody uses it so every new engineer you bring onto the project has to learn something entirely new before they can start really contributing. You also have no idea how long it will be supported by its developers into the long term future.
A battle hardened, production tested tool that has a huge community, has been around for a long time, and that a lot more developers already know how to use.
Sure #2 might be slower by a few fractions of a second, but if I'm in charge of the business i know which option I'm going to choose 100% of the time.
Look, I'm not a fan of early adoption either... but Tauri is not a one-person project that appeared yesterday. It's been around for a while now and has important industry endorsements.
Also, every company should have an objective and rigorous set of technical requirements for the frameworks they use. If Tauri passes those there's no reason not to use it.
As much as technologists like us wish we could prioritize efficiency and use the latest and flashiest tools all the time, that's just not practical. When you say you want each company to have an objective set of technical requirements when choosing a toolset, you also have to have a set of practical requirements. What is the cost of friction of adding a new tech stack to the company?
Adding electron means just learning electron. Adding Tauri means learning Tauri and Rust.
It's like the saying goes, "the best camera is the one you have with you". It's true with any business decision.
You have to upgrade sometime, you can't stick to the "good old thing" forever.
That's the kind of thinking that makes a business miss the boat by a decade or two until they're no longer competitive and the cost of refurbishing has become so ridiculous that they're forced to liquidate and sell whatever's left of value (mostly customers and assets).
Because when I'm looking for where all my RAM went and realise I'm running 7 instances of Chrome browser for no reason. Meanwhile an actual instance of Chrome with ~20 tabs is still a single instance, but with multiple threads.
Genuine question, why does it matter? Why shouldn't a project choose a production ready method of creating cross platform compatible code to avoid duplication of efforts and cost?
because most people use more than one program at the same time? fire up that one along with, I dunno, Spotify and Discord and Slack, and suddenly your midrange laptop's RAM is all but gone.
Same thing happens to me if I were to open each of those apps as chrome tabs.
The apps you listed provide a web version also. Adding choice to the customer experience is a good thing!
"you can have your memory eaten by our website in your browser, or by our website in a separate browser window wearing fake moustache and glasses" doesn't seem to be much of a choice.
meanwhile if you launch their services using something other than a glorified Chrome tab, like spotify-qt or ripcord, they both end up consuming like one tenth of the resources the official clients do.
Why do you think everyone cares to optimize every single ounce of their ram memory. There is a lot more to UX than that.
I would rather an imperfect choice than none at all
That's a bad analogy. A browser with 5 tabs is not like having 5 different browsers open.
User experience is not just about optimizing every little bit of your RAM consumption. They're are plenty of other factors as well
Yes, and UX is bad in web applications. I‘m saying that as a web application developer.
Oh the fact it's cross platform is not the issue, the issue is that Electron sucks. There are better alternatives available like Tauri, yet companies keep using Electron because that's what their developers know and they're afraid to try something new.
If I'm a company and want to bring something to production quickly, what should i choose:
A relatively new tool that has seen barely any production use and thus could have a bunch of unanticipated problems. Also nobody uses it so every new engineer you bring onto the project has to learn something entirely new before they can start really contributing. You also have no idea how long it will be supported by its developers into the long term future.
A battle hardened, production tested tool that has a huge community, has been around for a long time, and that a lot more developers already know how to use.
Sure #2 might be slower by a few fractions of a second, but if I'm in charge of the business i know which option I'm going to choose 100% of the time.
Look, I'm not a fan of early adoption either... but Tauri is not a one-person project that appeared yesterday. It's been around for a while now and has important industry endorsements.
Also, every company should have an objective and rigorous set of technical requirements for the frameworks they use. If Tauri passes those there's no reason not to use it.
As much as technologists like us wish we could prioritize efficiency and use the latest and flashiest tools all the time, that's just not practical. When you say you want each company to have an objective set of technical requirements when choosing a toolset, you also have to have a set of practical requirements. What is the cost of friction of adding a new tech stack to the company?
Adding electron means just learning electron. Adding Tauri means learning Tauri and Rust.
It's like the saying goes, "the best camera is the one you have with you". It's true with any business decision.
You have to upgrade sometime, you can't stick to the "good old thing" forever.
That's the kind of thinking that makes a business miss the boat by a decade or two until they're no longer competitive and the cost of refurbishing has become so ridiculous that they're forced to liquidate and sell whatever's left of value (mostly customers and assets).
Because when I'm looking for where all my RAM went and realise I'm running 7 instances of Chrome browser for no reason. Meanwhile an actual instance of Chrome with ~20 tabs is still a single instance, but with multiple threads.