Sublime Text is a great example of what performance can be like with a different toolkit. Compare it to vscode - even on a fast machine - and you'll start to notice all the little lags that can creep in.
It’s still mainly just a text editor and not “full-blown”. There is no significant built-in user interface, gui designer/builders, or emulators for example. The plugins can be native, which could allow for this. Essentially, vscode is a text editor that allows for native plugins, which explains the high performance possible.
Emulators are not native to IDEs, there's always glue code, you can write a plugin for it. I don't know about GUI-Builders, but in principle you can do anything. It's just a web view after all. Vscode is incredibly flexible. I have written a paper with it including live preview of the pdf. But I don't care about GUI-Builders. You only need them for apps and then you are stuck with each walled garden anyway and forced to use e.g. Xcode. Except ios/android apps, who's native anyway in the 21st century? ;)
The issue is in the application architecture, not the platform architecture.
VSCode uses raw TS with no frameworks and all handcrafted events (manually attaching and detaching dom event listeners is commonplace, and hand wiring each event’s propagation chain is as well), Teams hops to the current flavor of the week framework when they get too far up a tree with the last rewrite’s.
VSCode has also never been rewritten from the ground up, whereas this is Teams’ fourth or fifth time by my count.
VSCode also has about 50 people on it, all said and done (PM, Design, etc included), teams has well over a thousand.
It’s really quite an interesting case study. The lesson being, IMO: stop worrying about electron vs native vs angular vs rust vs react vs blah blah blah and just:
- don’t be afraid to write good code
- profile often
Electron is a waste of resources. A high price to pay for the convenience of easy multiplatform applications.