News for hackers. Stuff that matters.
Re:It is fast or it is wrong by bunderbunder on Saturday December 29, 2018 @04:11PM (#18785697)
VSCode grew out of a project to make a browser-based IDE. So, when they decided to make a desktop-like user experience instead, Electron was the natural choice, as a way to make it a port rather than a complete rewrite.

You could argue that it's a similar story for things like Slack - for business reasons, they more-or-less needed to have a web-based UI. If you're already committed to that, then it makes sense to use Electron in order to maximize your code reuse.

I can't speak to Discord or Atom. Those ones make less sense to me, but there might be a reason there, too.

Speaking completely personally, Qt has never felt like a viable option for a commercial project to me. It does have some bindings for other languages, but, at least last I checked, they're all community supported. When you're talking about language binding libraries, it's reasonable to think of "community" as a polite way of saying "poorly". That can quite justifiably influence a person's willingness to rely on them for non-hobby projects.

I don't like JavaScript much better than I like C++, but at least I can more easily think of business cases for why I might accept being locked into JavaScript. The ones up above, for example.

Re:It is fast or it is wrong by latexr on Saturday December 29, 2018 @06:23PM (#18786310)
> I can't speak to Discord or Atom. Those ones make less sense to me, but there might be a reason there, too.

Electron exists because of Atom (yes, in that order). Electron was previously called Atom Shell[1] because it was created specifically to house Atom, although they mention it wasn’t created just for that. If there’s one app that has a reason to be built on Electron, it’s Atom, because it was an experiment to see how viable that solution would be.

But even they understand that solution wasn’t the best because it’s slow, so they’re experimenting with a model where the application logic is written in Rust and only the UI is built with web technologies[2].

[1]: https://electronjs.org/blog/electron

[2]: https://github.com/atom/xray

Re:It is fast or it is wrong by danellis on Saturday December 29, 2018 @04:47PM (#18785910)
At least part of the reason is probably the lack of a good layout engine that's more flexible than rich text and less complex than a web page. An embedded browser gives them everything they need for their highly stylized layout, but at a great cost.
Re:It is fast or it is wrong by pjmlp on Saturday December 29, 2018 @05:17PM (#18786042)
You can do quite powerfull layouts with QML.
Re:It is fast or it is wrong by spullara on Saturday December 29, 2018 @05:58PM (#18786216)
Discord also has an identical web UI.
Re:It is fast or it is wrong by zakius on Friday January 11, 2019 @07:15AM (#18882969)
that has less than half functionality (and across different browsers it may be even worse)
Re:It is fast or it is wrong by pseudalopex on Saturday December 29, 2018 @08:21PM (#18786756)
Qt includes JavaScript bindings. Python has commercial support. Java used to.

Electron is good for an MVP if you have or need a web app. Companies keep using it afterward because it commodifies developers and externalizes costs.