<story><title>Electron 4.0.0</title><url>https://electronjs.org/blog/electron-4-0</url></story><parent_chain><item><author>PaulHoule</author><text>Why is it that people seem to think using a cross-platform UI toolkit like tkinter,  kivy,  WxWindows,  etc. is like putting their hand in a toilet?&lt;p&gt;Lately I have been building apps with tkinter&amp;#x2F;python&amp;#x2F;asyncio and I can&amp;#x27;t get over how fast the apps are to load and to use.  There is none of this &amp;quot;let&amp;#x27;s not respond to the mouse for 5 seconds&amp;quot; that is staggeringly common on my mac (particularly for apps like Safari and iTunes that come from Apple) nor the &amp;quot;go for a walk around the block&amp;quot; loading times for Java-based apps on my i7 Windows laptop.&lt;p&gt;True tk apps are ass-ugly but I find it mind-blowing to use GUI apps that are as responsive as Windows 95 apps were back in the day.</text></item><item><author>accatyyc</author><text>The issue itself is that Chromium uses a lot of memory. And electron basically just runs Chromium. Except that since each Electron-based app ships its own very isolated copy of Chromium, the following problems occur:&lt;p&gt;- The operating system cannot share memory between different Electron processes. Normally if you start many processes of the same binary, the memory is shared and only copied on write. Since each Electron app is a different binary (even though they are 99% identical) they each eat memory.&lt;p&gt;- The above applies to disk size as well. Electron apps are usually huge, and 99% of the binary is the same as all your other electron apps.&lt;p&gt;This is mostly why I&amp;#x27;m against electron. If electron worked like the JVM and each app shared a runtime, many issues would be solved, including many electron apps running old, and vulnerable versions of Chromium. Now it&amp;#x27;s only updated if the developers decide to ship a new version.</text></item><item><author>Djvacto</author><text>I always read about how Electron is very resource-intensive, but I&amp;#x27;m curious as to how the performance improves as time goes on?&lt;p&gt;Does the Electron team have a focus on improving performance? Or is the issue with the developers using electron, should they be optimizing better?&lt;p&gt;I assume it&amp;#x27;s some of both, but curious if anyone with more experience in electron can provide any insight as to how the performance changes over time.</text></item></parent_chain><comment><author>androidgirl</author><text>The aversion is mostly that a lot of devs have learned to use html, css, and js for styling ui&amp;#x27;s.&lt;p&gt;I love Kivy as well as QT. You can make some decent looking apps with the former and some incredible ones with the later. I have never personally worked with Electron.&lt;p&gt;But yeah, most devs use JS, HTML, and CSS for ui creation because of the Web.&lt;p&gt;I think something like QML could replace the html and css parts, though.</text></comment>
<story><title>Electron 4.0.0</title><url>https://electronjs.org/blog/electron-4-0</url></story><parent_chain><item><author>PaulHoule</author><text>Why is it that people seem to think using a cross-platform UI toolkit like tkinter,  kivy,  WxWindows,  etc. is like putting their hand in a toilet?&lt;p&gt;Lately I have been building apps with tkinter&amp;#x2F;python&amp;#x2F;asyncio and I can&amp;#x27;t get over how fast the apps are to load and to use.  There is none of this &amp;quot;let&amp;#x27;s not respond to the mouse for 5 seconds&amp;quot; that is staggeringly common on my mac (particularly for apps like Safari and iTunes that come from Apple) nor the &amp;quot;go for a walk around the block&amp;quot; loading times for Java-based apps on my i7 Windows laptop.&lt;p&gt;True tk apps are ass-ugly but I find it mind-blowing to use GUI apps that are as responsive as Windows 95 apps were back in the day.</text></item><item><author>accatyyc</author><text>The issue itself is that Chromium uses a lot of memory. And electron basically just runs Chromium. Except that since each Electron-based app ships its own very isolated copy of Chromium, the following problems occur:&lt;p&gt;- The operating system cannot share memory between different Electron processes. Normally if you start many processes of the same binary, the memory is shared and only copied on write. Since each Electron app is a different binary (even though they are 99% identical) they each eat memory.&lt;p&gt;- The above applies to disk size as well. Electron apps are usually huge, and 99% of the binary is the same as all your other electron apps.&lt;p&gt;This is mostly why I&amp;#x27;m against electron. If electron worked like the JVM and each app shared a runtime, many issues would be solved, including many electron apps running old, and vulnerable versions of Chromium. Now it&amp;#x27;s only updated if the developers decide to ship a new version.</text></item><item><author>Djvacto</author><text>I always read about how Electron is very resource-intensive, but I&amp;#x27;m curious as to how the performance improves as time goes on?&lt;p&gt;Does the Electron team have a focus on improving performance? Or is the issue with the developers using electron, should they be optimizing better?&lt;p&gt;I assume it&amp;#x27;s some of both, but curious if anyone with more experience in electron can provide any insight as to how the performance changes over time.</text></item></parent_chain><comment><author>shaan7</author><text>&amp;gt;  Why is it that people seem to think using a cross-platform UI toolkit like tkinter, kivy, WxWindows, etc. is like putting their hand in a toilet?&lt;p&gt;Um because a lot of them already know HTML&amp;#x2F;CSS&amp;#x2F;JS (because they&amp;#x27;ve worked on websites). This the the major reason why Electron is popular - the barrier to entry is very low. That combined with the fact that users don&amp;#x27;t complain, just makes it a &amp;quot;pragmatic&amp;quot; choice.</text></comment>