Live data from Hacker News

Electron is flash for the desktop (2016)

josephg.com

761–770 of 1001 posts

Re: Electron is flash for the desktop (2016)

#761

Earlier quoted context omitted.

That is due to the technologies available on the web being easily more suitable for GUI development than older native tools or desktop frameworks. We're in a similar boat, we made WPF apps. Now we're bringing it to the web and Electron. The things you can do now in React, heck i wouldn't even know where to begin in WPF or QT. If you look at modern Electron apps like Atom, VSCode, Discord and so on, the things they do…

Other than declarative vs imperative, please substantiate your post with examples of what isn't possible in WPF or Cocoa. I have a feeling it's more of an experience / competency issue rather than lacking APIs.

It's the ease of declaring components and structuring complex applications with it. There is nothing in WPF that is comparable to it unfortunately, except Redux.NET maybe, but XAML is a lost case against JSX. You'd have to see it, or work with it. The bottom line is, drastically less code, clean structures, things become simple to do.

Debugging is also something different: https://camo.githubusercontent.com/a0d66cf145fe35cbe5fb34149...

Like hot module reload where you write your app live. You edit one component, everything else stays in place and maintains state. Or time travel with Redux, where each piece of state is inspectable. You roll back or slide through the apps history and see it literally build and deconstruct itself. That's possible because UI is just a function of state. Same state, same UI.

Re: Electron is flash for the desktop (2016)

#762

Earlier quoted context omitted.

No, my point is people will use anything that allow them to do what they want the easiest way possible, not matter the cost and cleaness. The point is the web is the most active platform. The point is doing things right is not winning. The reason you are missing the point is that you think it's only a technical problem. It is not. It's technical + cultural + societal + historical + economical. > It's hilariously easy…

Thanks for clarifying :) You're right, I missed the point. > people will use anything that allow them to do what they want the easiest way possible, not matter the cost and cleaness. I disagree, because people are implementing things in Rust right now even though it's harder than doing it in JS. Generally, they do that because they care about things like performance, safety, and maintainability. For them, "harder" is…

I'd give you a standing ovation if I could. So well said! It's heart-warming to know there are other people out there thinking exactly like myself.

Nobody ever learns from history and it is full of examples of what happens in an industry where speed is valued more than quality.

Re: Electron is flash for the desktop (2016)

#763
post #619

Earlier quoted context omitted.

> It's been a LOOOOOONG time since I worked on a laptop where I experienced noticeable performance problems... Really??? Because personally, I keep having performance problems on all laptops I have. Don't try running on battery saving mode, seriously. I stop counting the 5+ years old laptops that have to be upgraded, they can't watch a youtube full HD video in good conditions. ---- Fun Anecdote: I had to trial an ent…

> I stop counting the 5+ years old laptops that have to be upgraded, 5+ years ago is that LOOOOOONG time that OP was talking about. It's also unfair to compare technical capabilities of old hardware for many reasons. I think the point was that, new hardware, _while its new_, is becoming more and more capable. Any new laptop today, even budget ones, can handle YouTube videos in HD. The problem is that HD today won't b…

I don't know, 5+ years isn't that old anymore for a computer. Like, 5 years ago I was running... a core i7 with 4GB of ram. And now I'm running... a core i7 with 16GB of ram. The only things in computers that have really gotten significantly faster are SSDs and GPUs

Re: Electron is flash for the desktop (2016)

#764

Earlier quoted context omitted.

Thanks for clarifying :) You're right, I missed the point. > people will use anything that allow them to do what they want the easiest way possible, not matter the cost and cleaness. I disagree, because people are implementing things in Rust right now even though it's harder than doing it in JS. Generally, they do that because they care about things like performance, safety, and maintainability. For them, "harder" is…

I agree with you on all the things we should do. And I like dinosaurs too. But sentences like this one are a good example of why electron succeeded: > The Qt license comes up all the time, and it's seriously just don't link your app statically. The last 3 people I met coding electron have absolutely no idea what linking is. You are, quite literally, overqualified to understand electron's success.

That's 100% fair.

Re-reading your posts, I kind of get the feeling we're on the same side. While I think it's important to create a better culture in software dev, I also think it's probably just as important to make it easy to write a program "the right way". Right now, it's just way, way too hard.

I kind of blame Electron for making it easy. It's sort of a trick right, "hey, I don't know what those C++ people are doing, just use JS, it's super easy". I don't necessarily think projects should post a table of pros and cons of their software -- there's definitely a certain level of "do your homework" involved -- but I do think some level of self-awareness is warranted. Think of SQLite's "Appropriate Uses For SQLite" page.

> If we want native clean apps back in the game, we need to make it easy and convenient for the new generation of devs to provide the features the new generation of users want.

Yeah, thinking about it a little more, I super agree. I don't think we should compromise all our values, but we definitely need to spend some time making software dev a lot easier.

Re: Electron is flash for the desktop (2016)

#765
post #738

Earlier quoted context omitted.

And is Electron more secure? I guess it doesn't have hackers all around the world trying to find vulnerabilities. Is that good or bad?

that does not apply to desktop app

Why not? Is it not using a VM for desktop app?

Re: Electron is flash for the desktop (2016)

#766
post #73
post #18

A lot of Slack's high (background) CPU usage is caused by GIFs, in my experience. Just did a quick check on my quadcore MBP, having Slack fullscreen out-of-view with nothing animated in view gives it a CPU usage of 0,1% with spikes up to 2,5%. Switch to a conversation with a single animated party parrot emoji, go to another fullscreen app once again, and CPU usage never drops below a whopping 22%. For an animated par…

They can't really blame Chrome/Electron. If you ship it you own it.

But they have responsibility as to what underlying tech they use. A responsibility they happily offload to someone else and go on their merry way -- and that's one of the big issues here.

Re: Electron is flash for the desktop (2016)

#767
post #737

Earlier quoted context omitted.

Everything in the world of web-stack development has turned externalizing costs onto users as a core first principle.

it's been that way since forever. if you're not employing expensive top-ranked brilliant engineers writing aggressively optimized, completely bespoke c applications tuned to every cpu model's feature set and performance characteristics... you just might be externalizing. insofar as it benefits the budget, you should probably externalize as much as possible. consumers will provide the fitness function through deciding…

consumers will provide the fitness function through deciding what products they prefer.

What about when your users don't have a choice?

Re: Electron is flash for the desktop (2016)

#768

Here's the thing. You know what the alternative to all of these Electron apps coming out is? If your answer is "A native Cocoa/WPF app", you are on another planet, the answer is, "It wouldn't exist at all". Nobody in the last 5-10 years cared about writing Desktop apps before Electron came along, there's basically zero money in it, and it's massively expensive, both in terms of actual dev time per feature (easily 10x…

> You know what the alternative to all of these Electron apps coming out is? If your answer is "A native Cocoa/WPF app", you are on another planet, the answer is, "It wouldn't exist at all".

Agree fully with this. I find the complaints about how appalling it is that apps use a few extra 100MB of RAM and disk space really tiresome and impractical when laptops + desktops typically have lots of RAM and disk space now. Many of these cross platform apps either wouldn't exist or would exist on only one platform if everyone insisted on native apps especially for apps made my small teams or individuals.

I'm not saying Electron is perfect but easy cross platform support is a huge benefit and one of many. You also have the huge JavaScript community, pool of developers and available libraries to draw from as well as being able to share code between your desktop app and web app. Tossing that all away to save resources that most users aren't even going to notice isn't a good business decision in my opinion.

Re: Electron is flash for the desktop (2016)

#769

Earlier quoted context omitted.

But the user experience is already great, so what's the gain? Electron and the web clearly make a first class app platform on desktop. EDIT: thanks for the downvotes. I'd love to hear your thoughts on how electron is keeping Slack and Spotify from building a massive business and how their desktop users find the experience so bad they don't use the tools obsessively. Clearly there are things to improve w/ Electron (en…

What advantages does the user receive for running the Slack Electron app, as opposed to having the site open in a browser tab?

None that I can think of, really. This is one of the cases where a desktop version of a web app exists and I'm not aware of why.

Spotify makes sense as it can reliably use your file system for storage and thus download songs so you're making fewer network requests. Perhaps Slack could keep a short log to prevent "scrolling up"-related network requests?

Re: Electron is flash for the desktop (2016)

#770

Here's the thing. You know what the alternative to all of these Electron apps coming out is? If your answer is "A native Cocoa/WPF app", you are on another planet, the answer is, "It wouldn't exist at all". Nobody in the last 5-10 years cared about writing Desktop apps before Electron came along, there's basically zero money in it, and it's massively expensive, both in terms of actual dev time per feature (easily 10x…

That's nonsense . Desktop apps have been frequently released since forever. The underlying issue here is that Electron reduces the barrier to entry for cross-platform development . That is, it's cheaper to build a single cross-platform application in Electron than it is to build two or three native applications, and you can re-use your existing web experience. I can completely understand why companies might choose th…

[deleted]
Post reply on HN