francisl
Joined 12 years ago
Joined 12 years ago
The outlook app will be native desktop and mobile (except linux for now).
Plus it will give the maui project more credibility, help grow its userbase. Make the framework better by providing a real world project for the maui team to benchmark, highlighting pain point, provide in-house feedback, feature request.
Electron uses its own renderer (chrome). Meaning it can't share memory with the os browser and make download size way bigger. It bundles nodejs. Again make download size bigger Nodejs needs to create multiple processes which each of them can use a lot of memory. It use a bridge between the UI and backend (to do os stuff) while JS is nowaday fast, Go/Java/C#/etc are still faster
Wails on the other hand. Uses the os browser. (Download size is reduce and can share memory) Go is compiled to native, no runtime needed. (Download size is reduce, lower on memory, run faster) Same bridge performance bottleneck, but you can perform critical stuff in Go and get an advantage.
HTML renderers are fast. Code your UI with performance in mind, use a library like svelte or solidjs combine with something like wails (or anything that will do the same thing in java/c#/swift) and you won't see a difference between any native apps in most cases. Also you gain the ability to share your UI code with the web.
> Native Android, Native iOS (KMM) and soon Desktop+Web (Compose Multiplatform)
Because the M1 Max is not less than half
https://browser.geekbench.com/v5/cpu/compare/11136167?baseli...
That includes defects,
It's one of many reasons I like new compiled/vm languages like Go, Swift, Nim F#. You got the productivity of python, but near the performance of C. User wins, dev wins and planet wins.
But your translation is inaccurate. it would be more something like:
"They were decided to occupy France like an enemy territory"
It was not the French who described the liberating force as an enemy, but that the liberating for was acting like an occupying force and didn’t see the French as allied but as enemy.
You can look at the Allied Military Government of Occupied Territories (originally abbreviated AMGOT, later AMG) for more information. https://en.wikipedia.org/wiki/Allied_Military_Government_of_...
Calling an app junk to justify is argument is unconvincing. Its still a widely used app that works as good as the competition. In the case of slack, their optimisation endeavour seems to cost them quite a lot. But sure I don't have the number. If they would have start the project in Tauri or Wails at the beginning, would that saved them the refactoring? I don't now. But we will need more team using that kind of alternative to gain the knowledge and real benefit.
At this point I rewriting a toy project from electron to wails and its great. But well, it's only a toy project.
Ins't the easy answer. Each time a dev want to ignore valid comments.
I have the following electron app running: Spotify, Figma, VS Code, Discord, Slack. They all use more than 1 helper. Consuming between 600mb to 3.5gb.
Slack is much better than it was. But I wish they switch to something like Tauri or Wails in the future.
Have one, real Multithreaded +, more efficient backend, will reduce memory and offer better performance.
Wails is also an alternative that does just that. Shared Web UI engine + Go compiled backend.
I really do like Nim, but suggesting it to do WebAssembly out of the box could be deceiving and do no good. The project is currently in the hard spot where it's hard to convince your team of using it, but because its hard they is less contribution.
As for llvm, you might be right, I'm not an expert in that particular field. But it seems there is a lot of already backed in stuff you'll have for free. Like Wasm, debugging, optimization. We'll see how the Crystal project manage to get Wasm and how llvm will help them.
I tried several time and always got stuck somewhere.
Rust that has the reputation to be hard, but is way simpler and faster to get into WebAssembly.
I wish they adopt nlvm as the default compiler, it would make stuff like that way easier and probably boost adoption.
To put a real value on the work of a heterogeneous pool of developers is way harder than it looks. One will only value the contribution of what 'he/she' values as important. But the quality of a software come from the strength of many that focus on different things. Even the person who is not really good, but is the only one that bring a 'team spirit/team work' brings value to a team.
With React you just switch your complexity. I don't feel more productive with my functional components than with my class component. I even more scared to introduce a memory leak with my useEffect than I was before.
But I do feel more productive with svelte or Blazor. That make me realize that OO vs FP is the the real vector. Reactive programming with good design is.