12 ms·
> one of the best things to happen on desktop, especially on linux desktop ironically Not by a long shot. It's one of the worst things to happen on the desktop
by beojan 9y ago
> one of the best things to happen on desktop, especially on linux desktop ironically
Not by a long shot. It's one of the worst things to happen on the desktop, because people who would have built a proper desktop application just wrap their web app in Electron instead.
It's particularly bad for the Linux desktop, where people are used to small binaries that use the system-wide Qt or GTK so they load fast, and use little RAM.
- yoz-y 9y agoI think the idea is that most developers would not make a proper desktop app, and without electron there would just be not app at all. But I think that Electron is a short term good which will cause a lot of long term "bad".
- beojan 9y ago> I think the idea is that most developers would not make a proper desktop app, and without electron there would just be not app at all. Precisely, people will just use something else. The proliferation of Electron apps splits the user base, so there's less incentive to develop a proper desktop application.
- stelonix 9y agoWhen you look at the Linux desktop software stack, I can't condemn anyone for choosing js+html+css over what's available. There's no consistency between the dozen "toolkits", each one with its own way of doing things and a lack of interoperability. If you ever had to work with X11's concepts of drag'n'drop, windows, input etc. you probably know what I'm talking about. Dozens of toolkits, few of them talk to each other. It's a mess. Electron just works. People who would have built a proper desktop application simply don't because the tooling, the environments, the standards (and lack thereof) are awful. The whole concept of "toolkits" is what makes the situation a complete mess.
- beojan 9y agoAdmittedly (as a Plasma user) I'm a little biased here, but the answer is to just use Qt (Widgets) and move on. QGnomePlatform and QGTKStyle means Qt works just fine in a GTK-based desktop, while the reverse just isn't true. Unless you have a good reason (in which case, you'll know), you can just ignore everything other that Qt and GTK.
- stelonix 9y agoIt's not just about development, there are numerous applications built in different toolkits which many of us use everyday. Some of these apps are closed source, so suggesting a rewrite in Qt is out of question. Don't get me wrong, it would be awesome if we could compromise on any given toolkit, but do you honestly see any of them waving the white flag? Meanwhile, on Windows for example, there's a standard way to write GUI apps, standardized, well-known and consistent APIs to deal with GDI's toolkit etc. It's awful to write GTK apps just as it's painful to write in pure WINAPI GDI, but GDI has the advantage of being the default, so that "native look" is consistent across most applications since the 3.1 days. Then comes the community: we have 20+ years of GUI programming happening on Windows, most people simply stick to GDI + self-made custom controls. The outcome is a huge knowledge base that helps get anything and everything done on Windows. Here in the UNIX world over the same time period the GUI developers are spread among different toolkits, so we have many "ok" people in a dozen toolkits and few experts on each one.
- beojan 9y ago> Some of these apps are closed source, so suggesting a rewrite in Qt is out of question. Qt is LGPL. So long as you dynamically link to Qt, it doesn't matter what license your app is under. If you don't dynamically link, you lose the integration benefits anyway, so there's no downside, really (Qt is backwards compatible within each major release, so just build against the earliest version of Qt 5 your app works with). > GDI has the advantage of being the default, so that "native look" is consistent across most applications since the 3.1 days History means we have two defaults on Linux: Qt and GTK. Qt integrates well in a GTK desktop though, so you can just use Qt.
- afarrell 9y agoCan you point to a solid Qt or GTK tutorial for newbies?
- thezoq2 9y agoPeople who built proper desktop applications didn't build them for linux. Even microsoft are releasing their electron things on linux (skype and VS code). I very much doubt that would have happened if they built native apps. I much prefer the ability to running a slightly inefficient program over not having that program at all.
- deadbunny 9y ago> because people who would have built a proper desktop application just wrap their web app in Electron instead. Except no-one would have built clients for the linux desktop. Go back before Electron and count how many official clients for Linux there were from major software vendors, hell I'll even take massively feature incomplete answers like "Skype" just to help you.
- nkkollaw 9y agoMost companies would never build a Linux app. One notable example is Skype: their Linux client sucked so much it was unusable until their Electron version made the Linux version just as good and modern-looking as the rest.