Live data from Hacker News

Electron 7.0

electronjs.org

81–90 of 289 posts

Re: Electron 7.0

#81

Earlier quoted context omitted.

I don't. The reason is UI kits on different OSs are so different that allowing this stuff makes for haggard looking apps. Using the web at least brings consistency to the experience. There's no workaround I can think of, you either write one UI per OS (even with QT you still need to adjust for conventions, spacing etc...) or you make an OS agnostic UI with Web tech.

> (even with QT you still need to adjust for conventions, spacing etc...) That is what I'm talking about: SwiftUI automatically uses the recommended conventions for spacing, padding, etc. which are different for macOS vs. iOS etc., and it also takes user environment settings into account, like font sizes and other accessibility options.

Unfortunately swift doesn't have a meaningful windows story, and giving up on 100s of millions of users is less than ideal for most "crossplatform" contexts. :/

Re: Electron 7.0

#82

Earlier quoted context omitted.

On my machine, an empty Atom instance is using about 400 MB: https://imgur.com/S1POSPz.jpg

Do you have some packages installed? If so, can you re-run with `atom --safe`? Granted, it is totally normal to have packages when using Atom, but their memory cost shouldn't be considered a penalty that you pay due to Electron. Rather, it's a penalty that you pay if you want an extensible application in which extensions are allowed to use JavaScript.

I have no custom packages installed - I use atom just to take notes and do small text editing.

When I run `atom --safe` it starts at around the same amount of memory usage: https://imgur.com/j4Co4n6.png

Side note: Running that command is now preventing my from quitting Atom using the Atom > Quit menu entry. I had to force quit it to get it to close.

Re: Electron 7.0

#83

Every time Electron is mentioned I bust out the popcorn for the inevitable hate spewed towards it: "Javascript is a terrible language and no one should use it" "Separate instances of chrome for every app is dumb and consumes too much memory" "Qt is amazing and elegant and desktop-native. Why isn't everyone just using Qt?"

The problem with Qt I have is how incredibly expensive it is. Sure it's free if you want to build something open source, but you know some of us have to also make money to pay for being alive and it's hard to bootstrap an application if you have to pay $5,508 up front, per developer, and then again on an annual basis.

Re: Electron 7.0

#84

I'm bullish on Electron. I think it's just a couple of technical advancements away from being the ultimate desktop toolkit. For context, I love and have worked a ton with Qt, and I much prefer Qt UIs as a user. But Electron has brought true cross-platform development to all platforms (Including Linux!). If it weren't for Electron, I wouldn't even have a bunch of the apps I use today. Hell, I wouldn't have a good IDE,…

If only each OS would ship an abstraction layer that guaranteed "at least modern browser X" that one could ship into. I want to ship an electron app but I want it to be 100kb and start in 0.1s and take almost no memory because the libs are shared. I don't want each little chat app or music player to gobble up half a gig of ram and take 3 seconds to start.

Re: Electron 7.0

#85

I'm bullish on Electron. I think it's just a couple of technical advancements away from being the ultimate desktop toolkit. For context, I love and have worked a ton with Qt, and I much prefer Qt UIs as a user. But Electron has brought true cross-platform development to all platforms (Including Linux!). If it weren't for Electron, I wouldn't even have a bunch of the apps I use today. Hell, I wouldn't have a good IDE,…

Electron is so heavy you could include a copy of Windows 95 with every application and use its GUI.

This is how ludicrous the state of modern computing is. Java accomplished the same thing with fewer limitations and vastly more efficiency.

Best case scenario of the continuing "evolution" of electron is the elimination of the OS entirely. Why do you need it? Just put drivers in Chrome and be done with it. It's already the rest of the damn OS to a lot of people (notably not people like me).

Re: Electron 7.0

#86

Is there a good introduction to starting development with Electron as someone who is a C++ developer? I find web development quite difficult to grok in general; lots of frameworks and technologies.

Check out create-react-app: https://github.com/facebook/create-react-app

It sets up a 'modern' React-based web dev environment that can be used to immediately start experimenting with stuff. React acts as a view layer, so you can write views and components in HTML-ish declarative syntax while still getting live updates whenever data changes.

Past that, it's common for people to add Redux or MobX, which both act as global data stores with good integration with React, and have lots of secondary libraries for transparently handling data persistence.

Re: Electron 7.0

#87

I'm bullish on Electron. I think it's just a couple of technical advancements away from being the ultimate desktop toolkit. For context, I love and have worked a ton with Qt, and I much prefer Qt UIs as a user. But Electron has brought true cross-platform development to all platforms (Including Linux!). If it weren't for Electron, I wouldn't even have a bunch of the apps I use today. Hell, I wouldn't have a good IDE,…

If only each OS would ship an abstraction layer that guaranteed "at least modern browser X" that one could ship into. I want to ship an electron app but I want it to be 100kb and start in 0.1s and take almost no memory because the libs are shared. I don't want each little chat app or music player to gobble up half a gig of ram and take 3 seconds to start.

I give it 15 minutes before decisions, well reasoned or otherwise, by the individual platforms cause incompatibility issues that make you wish you'd just shipped your own copy of Chrome in the first place. This is part of the reason Electron even exists.

Re: Electron 7.0

#88

I'm bullish on Electron. I think it's just a couple of technical advancements away from being the ultimate desktop toolkit. For context, I love and have worked a ton with Qt, and I much prefer Qt UIs as a user. But Electron has brought true cross-platform development to all platforms (Including Linux!). If it weren't for Electron, I wouldn't even have a bunch of the apps I use today. Hell, I wouldn't have a good IDE,…

If only each OS would ship an abstraction layer that guaranteed "at least modern browser X" that one could ship into. I want to ship an electron app but I want it to be 100kb and start in 0.1s and take almost no memory because the libs are shared. I don't want each little chat app or music player to gobble up half a gig of ram and take 3 seconds to start.

I think OS makers explicitly don't want to do this. In the case of Apple, they prefer you to use all their tools and technologies. It allows them more management of the experience.

Re: Electron 7.0

#89
post #20

Earlier quoted context omitted.

Yes - WebAssembly. It would hopefully kill the whole thing as an end game.

It really wouldn't. WebAssembly has nothing to do with the rendering engine, which is the bulk of Electron's footprint (and also the bulk of its apps' processing overhead). The latter can only be improved by Chromium devs (and is being improved constantly). The former requires that we come up with a way to share a single Chromium copy across apps. There's really no other way around it.

ironically, java applets provided via the JVM a way to run multiplatform, perhaps not all applets off a single JVM - I don't remember exactly if each java applet used its own JVM, but it wouldn't be a radical departure to have the JVM run multiple applets, cross platform, which is the entire reason the JVM was invented.

Now instead of the JVM, we've these rather beefy runtimes due to Chrome, Node.JS, Javascript (v8)... which if you look at it, do the same things applets did, except different.

I think the problem w/cross platform is that we want to have everything look 'native' for the platform.. and when you demand that, hooking into the native APIs is sort of inevitable. Instead, I believe rendering probably ought to be done by the runtimes themselves, sort of like JVM did w/AWT/Swing..or like Dart is doing right now.

There's always going to be a trade off when wanting to have a single app that runs cross platform and maintain a native look/feel to it... Quite frankly, I'm not sure which is best, but I lean more toward 'do your own rendering' and port the runtime to run across platforms, kind of like the JVM ...except w/Chromium/V8/Node.JS. Sure it hogs memory and its slow... but I think most devs will take that over having to develop multiple apps doing the same thing per platform.

Re: Electron 7.0

#90

I'm bullish on Electron. I think it's just a couple of technical advancements away from being the ultimate desktop toolkit. For context, I love and have worked a ton with Qt, and I much prefer Qt UIs as a user. But Electron has brought true cross-platform development to all platforms (Including Linux!). If it weren't for Electron, I wouldn't even have a bunch of the apps I use today. Hell, I wouldn't have a good IDE,…

I release two apps, across 3 OSes, in somewhat of a bimonthly cadence with a low defect rate. That’s 6 different binaries. I’m a solo founder. I know people like to rag on Electron, but without it, I wouldn’t be using something else, my apps just wouldn’t exist . It allows more people to try building more thing and that is a net positive. The speed problems and bloat issues of Electron is just shoddy programming on t…

Good rationale from a maker, not a purist, and good luck with your projects!

I liked the site, it's clean and to the point. Just a small nitpick: right under the Demo download button, you say "(Demo does not have Pro features such as team management, access control and others)".

I wouldn't say that - that essentially gives the user a (subconscious) rationale on why she shouldn't download the demo. I would suggest to focus on the positives instead - what the Demo can do. If you can somehow remove limitations, even for 14 days - even better!

Post reply on HN