10 ms·
> While many software companies create a bloated installation package with size of 1 - 3 MB, the size of single utility in NirSoft is usually less than 100KB.
by kevindong 9y ago
> While many software companies create a bloated installation package with size of 1 - 3 MB, the size of single utility in NirSoft is usually less than 100KB.
The early 2000s were a different time. While as modern day electron apps are regularly 100+ MB.
- Polarity 9y agoim really fed up with this argument. most "native" apps use big chunks of the platform "frameworks" and are not platform independent, which was introduced by os companies and politics in the first place. most modern apple native apps are the ones that crash the most while electron are stable as fuck.
- babuskov 9y agoI'm curious. If you have 20 electron apps running, does that mean you would have 20 copies of the completely same thing wasting your disk space and RAM? How would that work if all the application developers decided that native sucks and all should use Electron?
- Zekio 9y ago20 electron apps would be 20 copies of mostly the same browser
- pavlov 9y agoYes, that's essentially what happens. And it's a huge waste if you have 20 Electron apps running. Each ships with its own copy of Chromium which is as large as an operating system. I created a proof-of-concept called Electrino that uses the platform native libraries to cut down on app size: https://medium.com/dailyjs/put-your-electron-app-on-a-diet-with-electrino-c7ffdf1d6297 https://medium.com/dailyjs/put-your-electron-app-on-a-diet-w... Unfortunately I haven't had the time to work on Electrino due to family, etc. — I wish I did because the need is clearly there.
- ChristianBundy 9y agoHey, I saw the post that got the ball rolling on Electrino and I've been meaning to reach out to you. Do you have any tips on where to start on porting Electrino to Linux? Electron-like "web" apps (that follow W3C standards) seem to be the future, and I'd love to help out however I can.
- pavlov 9y agoGreat! I use desktop Linux regularly and I have some ideas where the Linux port could start off. Would you drop me an email at pauli@lacquer.fi and let’s talk?
- tambourine_man 9y agoI've been thinking of something along those lines for years. I hope your project gets traction. I'd love to develop with web technologies exclusively, but what we've been doing with Electron is crazy. Imagine loading a whole new Win32 or Carbon/Cocoa for every app you open. I can understand the inconsistencies and lack of feature support that could emerge from using a different browser engine for each OS (Webkit/Edge), but there should at least be away for Electron apps to share Chromium/Node runtimes between them.
- satysin 9y agoIsn't this basically what PWAs will hopefully solve? Rather than Spotify, Slack, Discord, ... all coming with their own Electron bundle they can be packaged up as a PWA and use the browser as the runtime environment along with all the nice offline stuff, safe OS integration for notifications, sandboxed file system access, ability to still do some work in S0i3 (aka Modern Standy on Windows), etc. Or am I totally wrong about this? I am not a web developer so I could be :) Bonus question: how would this work for things like Atom and VS Code that are electron based. Could they become a PWA?
- tambourine_man 9y agoAll good questions and some things will probably be well addressed by PWA or whatever we decide to call JavaScript rich webpages by then. But some UI issues, like the lack of a proper menu, browser's chrome and address bar will still be a turn off. Besides, having unrestriced access to the user's drive is not something a web page should be able to do and is a must for something like a text editor.
- paulie_a 9y agoYou also have 20 security nightmare apps running
- deleted 9y ago[deleted]
- jcalabro 9y ago> most modern apple native apps are the ones that crash the most while electron are stable as... I'd hesitate to make this generalization. I need to use slack on a macbook for work and it crashes regularly. I tried out VS code and it also would crash on occasion. Worse than that, coworkers of mine have rolled bug-ridden electron apps that we're required to use. There are plenty of non-electron apps that are stable.
- epalmer 9y agoI'm on a mac and use slack an vscode. Neither has crashed on me. I'm wondering if there is something about your mac setup. I don't like that slack consumes some many resources. I love vscode so I don't care.
- TheForumTroll 9y agoHe is likely holding it wrong.
- tracker1 9y agoI've seen VS Code crash on Windows more than Mac... also, it often leaves anything you had running in the integrated terminal running in the background when it does crash. I haven't seen that specific behavior on mac though.
- ebrenes 9y agoMost of the issues I've had with VS Code were actually due to extensions and not VS Code itself. Like for example, we started getting issues with CPU's getting pegged to 100% and it seems it was a couple of linters that were running causing that.
- freedomben 9y agoNot necessarily your main point, but this triggered me: > coworkers of mine have rolled bug-ridden electron apps that we're required to use This is quickly becoming one of those things I can't stand, especially when there are open source/free options out there. No, I don't want to use your homegrown application unless there really isn't a good option out there. And if that's the case, make it a good tool and release it OSS and try to get some traction behind it.
- JetSpiegel 9y agoIt's better (and more efficient) to have a developer write (or waste, if you consider doing their job "wasting time") two interfaces than to waste the computer resources of a million people. Electron is just outsourcing cross platform development to the Chromium project.
- nradov 9y agoUnfortunately waste of users' computer resources is an externality and developers are more expensive than ever. Revealed preferences show that customers would rather buy more hardware resources than pay higher prices for efficient software (within reasonable limits).
- alacombe 9y agoThen perhaps OS vendor should start thinking about unifying their UI SDK using web engines, because having to support the finicky toolkit of every OS is a waste of engineering time.
- JetSpiegel 9y agoThat was Boot2Gecko aka FirefoxOS. I would not mind having that on a phone.
- gowld 9y agoGenerally I agree with you but for Electron we're talking about own-goals the developers inflict on themselves. No one outside of the HNosphere uses Electron apps.
- 013 9y agoPlenty of people outside of HN use Slack, Discord, Atom, VS Code, Skype and Twitch.
- radisb 9y agoRight now I have Discord, VS2017, a Postgres IDE and a bunch of Chrome tabs open. Task manager reports for memory usage (descending order): Discord: 1168,4MB, VS2017: 463MB, Chrome tabs: about 300MB each, PostgresTool: 152MB and the rest below 100MB. If I dont include all the chrome tabs, Discord uses more memory than all the other apps together, and some of them are "big" apps. So my 32GB RAM, high specs system, is able to run only up to ~ 30 instances of Discord, not counting even the OS. Wtf. It feels like malware.
- gkya 9y ago> im really fed up with this argument. most "native" apps use big chunks of the platform "frameworks" [...] Yeah, and that's a good thing. Furthermore, there are toolkits that don't, and they are still more efficient than Electron.
- saagarjha 9y ago> most "native" apps use big chunks of the platform "frameworks" and are not platform independent, which was introduced by os companies and politics in the first place That's the point. Why download another framework when you have one on your computer already that's tailored to your platform?
- u04f061 9y agoAll of the mess in apps belong to developers and it has very little or nothing to do with the underlying framework.
- dchest 9y agoFun fact: the icon for my Objective-C Mac app is larger than the executable binary (517 vs 394 KB).
- LeoPanthera 9y agoYou can probably shrink your icon down (losslessly) by dropping it into ImageOptim. https://imageoptim.com/mac https://imageoptim.com/mac
- Prefinem 9y agoNot OP, but thanks for the link to that app. It's quite amazing.
- conradev 9y agoOr the command line util pngcrush
- LeoPanthera 9y agopngcrush is fairly old. And terribly unoptimized. If you want a command line solution, I recommend optipng (which does what pngcrush does, but better), and sending the result through advdef, which improves the compression even further. ...but really. ImageOptim is super awesome and zero-effort.
- derefr 9y agoSuper awesome yes, zero-effort no—just try to make it into part of an CI/CD asset build pipeline ;) But really, why isn't ImageOptim itself available in command-line form?
- dabockster 9y agoIIRC, ImageOptim is a front end for a bunch of CLI image compression tools. So, in theory, you could roll your own for a CI system if you figured out all the arguments that ImageOptim was passing to those tools.
- codezero 9y agoAround 2000, I had a laptop with 5g of harddisk and 64mb of ram, now I'm at ~1tb and 16gb ram. Roughly a 200x increase in raw numbers, though lots of other things since then make the actual increase larger, so it sounds like we're using net-smaller apps :)
- voltagex_ 9y agoThe last time I noticed a real performance increase was going from HDD to SSD. I mean, I do also ask a lot more of my machine than 10 or 15 years ago so it probably balances out.
- skellera 9y agoWhat is the biggest current bottleneck? Going from HDD to SSD makes even a 5 year old laptop feel close to current. Is there something that would do the same now?
- berbec 9y agoSadly, no. Clock speed and multi-thread aware apps haven't gone far enough to give that feel of 'snap' we all got. I remember my Intel x25m so fondly. Even dual nvme drives in raid0 don't make thing hugely faster. I'm interested in what one of the 18-core i9s would be like clocked at 5ghz with our optane storage. Probably 1/3 of a second faster to load Firefox....
- lstamour 9y agoDepending on the CPU, RAM speed can be a big one. Laptop vs desktop still carries a performance cost due to the power requirements. NVMe SSDs are to regular SSDs what they were to hard drives, but there are limits, especially gigabit internet and slower CPUs. Honestly though, the biggest gains are generally in making software more efficient — like choosing Safari instead of Chrome, or removing unnecessary drivers and bloat from your system. Run a startup log or check your system’s logs for errors that might slow down your computer. Oh, and install browser-native adblockers on every device. :)
- jodrellblank 9y ago"Things that Turbo Pascal is smaller than" - http://prog21.dadgum.com/116.html http://prog21.dadgum.com/116.html
- _pmf_ 9y agoI've come to see the rise of Electron not as a shortcoming of other UI tech, not a problem with Electron. OSX, Windows and Linux failed to have any viable cross-platform UI solution[0]; Electron is what we deserve for this failure. [0] I would be very happy with Qt/QML and would grudgingly accept GTK, but others apparently are not that complacent
- interfixus 9y agoWe've had perfectly viably cross platform GUI-applications for decades. Lots of them. Done one way or another, or a third. I'm sorry, I fail to see the problem that abominations like Electron are trying to solve.
- digi_owl 9y agoEffectively it is VB for the web age...
- interfixus 9y agoExactly. And nothing new in my being contrarian. Back in my Windows days, back in the nineties, I had an iron rule that no vbrun.dll ever entered my machines. Mainly because they invariably turned out to be badly designed, poorly implemented, and just not worth the trouble. These days, I do* have a couple of Electron-things installed, because I occasionally need them, but they are ugly hacks which bring me no joy. No JRE either, by the way, if I can help it. Same reasoning.
- tracker1 9y agoCould you demonstrate an alternative that allows for UI as complex, with fewer cross platform issues that can easily target usage on MacOS, Windows and Linux? Let alone leveraging the language and UI interface/api that are the most widely developed against.
- interfixus 9y agoWe used to get along just fine on things like Qt, Gtk (perhaps via Wx), or indeed Tk - in some ways still my favorite after all these years. But then 'easily' wasn't necessarily the gold standard of everything. The electronisms I occasionally have to use are glorified chat-apps like Signal. Hardly complex UI cases.