Electron apps and Apple Silicon
I’ve been looking into some new (to me) note taking apps, Craft and Obsidian, to compare to my go-to for the past few years, Bear. And one of the perceived “negatives” of Obsidian is that it is based on the Electron framework. Some make the argument that Electron apps are bloated and slow compared to native apps like Bear and Craft.
What I’ve been wondering is how much, if any, perceivable effect these performance and system resources issues actually have when running on Apple silicon M1 based systems. The M1 has real-world single-threaded performance that beats out many best-in-class x86 processors. There’s also analysis that shows how the overall design of the M1 system-on-a-chip benefits many common operations such as those for reference counting and JavaScript interpretation. So, perhaps these make the performance difference moot when looking at the specific use case of UI frameworks. UI code tends to be single threaded, so it would really benefit from a CPU design that was able to get data out of RAM, processed, and back into RAM with low latency, while doing all the book keeping (reference counting or garbage collection) that modern language runtimes require.
Anecdotally, performing basic UI tasks on my M1 MacBook Pro feels so much more responsive and fast than on other Apple laptops with technically higher spec Intel chips. So, perhaps Electron apps are fast enough. That’d just leave the native vs cross-platform UI consideration, which is a whole other can of worms.