18 ms·
Well, I'm sure Logitech was sensible like most HackerNews developers and saved costs by using Electron for their driver. This gives you a nice 300MB+ base packa
by izacus 5y ago
Well, I'm sure Logitech was sensible like most HackerNews developers and saved costs by using Electron for their driver. This gives you a nice 300MB+ base package to drive the UI with a lot of unneeded code (most likely asking for the firewall permissions) and then additional actual driver download.
I'm sure that allowed them to iterate quickly, hire developers who know nothing but JS to build their driver package and ship the MVP with low costs!
Isn't that the type of software that keeps being defended here? ^^
- Kaze404 5y ago...Logitech?
- williamtwild 5y ago"like most HackerNews developers" What are you babbling on about?
- chapium 5y agoSeriously, I would have assumed Rust, Elm, Julia, D, or Zig if that were the case.
- K5EiS 5y agoThe driver is from Roccat, not Logitech.
- staticassertion 5y ago> Isn't that the type of software that keeps being defended here? ^^ No? I've basically never seen that and I see endless posts like yours.
- caslon 5y ago> Let’s get these out of the way: > 1. Yes, we’re building on Electron. Yes, we are aware of the performance tradeoffs, but have decided this is the best choice for us. We’re shipping Windows, Mac and Linux clients along with browsers with a four-person team — it’s the only good way right now to do that without features taking six months. We’ve modified the screen sharing pipeline in Chromium to reduce latency as much as possible, because with interactive screen sharing, milliseconds matter. Literally a massively popular post from this week, and all of their comments within are "Well yes, but theoretically VS Code got it to slightly over a hundred megabytes when idle so naturally Electron's perfect." https://news.ycombinator.com/item?id=28223515 https://news.ycombinator.com/item?id=28223515
- nosianu 5y agoSo you found someone who had a perfectly reasonable explanation for his choice of tools. We started with drivers and now you come with a desktop app example? Now find not just one (anecdote) but a trend in HN comments that this tool is recommended to be used when it is clearly the wrong tool for the job?
- clownpenis_fart 5y agoa reasonable explanation would have been "it was the best choice for our end users", not "it was the best choice for us"
- Closi 5y agoA reasonable explanation can, of course, be either of those things.
- 5y ago
- jmkni 5y agoBrutal lol
- falcolas 5y agoLogitech is absolutely as bad, or worse than Roccat here. I have no legitimate way to get mac drivers for my mice, because they aren't on Logitech’s website anymore. And thanks to mac bs, they don't work out of the box.
- somewhatbetter 5y agoYou should stop buying non-standard compilant hardware then.
- kodah 5y agoJust to address your Electron mini-rant: I've been trying to build a desktop application for the entire pandemic. In my professional work I work on infrastructure products (think software engineering, not DevOps or SRE). My skills are not really outfit for frontend development or desktop development. Shocking stuff, my ineptitude, I know (/sarcasm) I ended up learning some JS and I wrote a desktop app with the help of a package called Wails for Go. It's electron-like in many ways, but lets me code up a "backend" in go while JS is resigned to doing things it's good at, like UI. Eventually, though, I struck the gold mine. I actually made a native desktop app in Go with an immediate mode package. It looked like shit, but it worked. I then went on to design a command line variant as well. My chief takeaway after doing all of them: even my native code resembled the patterns found in JavaScript based UI developments. This basically implies "ELM is everywhere" to some degree, even in Frontends that don't explicitly say it. QT's QML is JavaScript that's pre-compiled for desktop. Sciter is the same way. You can gripe about electrons size, computational, and memory efficiency, but the opposite (native programming for UI) requires an order of magnitude of very niche programming that will only be useful for this purpose, of which any cool thing (like syntax highlighting) that you might want to do will need to be done for the first time. Just a quick reminder, again, I'm not really a fan of or regular user of JavaScript or TypeScript. What I'm saying is, there are tradeoffs to be made. I don't blame a bunch of startups investing in a JavaScript desktop app when you can absolutely produce a stable cash cow with minimal skillset change and leave a handful of teams building independent threads and daemons that JavaScript can pass work off to that it can't do.
- ploxiln 5y ago> My chief takeaway after doing all of them: even my native code resembled the patterns found in JavaScript based UI developments. > (native programming for UI) requires an order of magnitude of very niche programming that will only be useful for this purpose that seems contradictory
- kodah 5y agoThe broader patterns are repeatable, somewhat, in that you can see them broad as day. The way these different languages handle state and communication is totally different though, so, simultaneously incredibly niche as well.
- danShumway 5y ago> Well, I'm sure Logitech was sensible like most HackerNews developers and saved costs by using Electron I'm not here to defend Electron, but most of the things Foone is complaining about would be terrible regardless of what base they use for the UI, and I'm not really sure what Electron has to do with this (or if it's even in use in this case). The really egregious thing here is asking for a Firewall exemption and not including the base driver in the box. A slow driver with a giant list of dependencies is bad, but it's bad for its own reasons. Electron didn't force the devs not to include mouse drivers in the physical box, Electron apps will easily fit on a driver CD. See also some of the other complaints popping up in the comment section here: > I recently bought a Logitech G Pro X Superlight to use as my daily driver on an M1 Mac. [...] Runs as root, [...] requires manually setting permissions on a config file in order to save settings[0] > Windows Update will download and execute RazerInstaller as SYSTEM[1] > All of Razer's products are like that. I've been boycotting them since their keyboard wanted me to sign in to use my function keys.[2] Again, not here to argue that Electron is good, but I don't see how any of the above is Electron's fault -- and I think even if you were happy with Electron, all of the above would still be egregious and unacceptable. Is the idea that if Razer wasn't using Electron, they wouldn't force you to create an online account and to stay continuously logged in for your function keys to work? I don't think I believe that. ---- [0]: https://news.ycombinator.com/item?id=28274711 https://news.ycombinator.com/item?id=28274711 [1]: https://news.ycombinator.com/item?id=28274594 https://news.ycombinator.com/item?id=28274594 [2]: https://news.ycombinator.com/item?id=28275254 https://news.ycombinator.com/item?id=28275254
- ploxiln 5y agoI think HP home inkjet printers were the first to do this, over 10 years ago. Somehow any way of finding and installing a driver on windows would pull in a 500MB suite of always-running junk before the actual driver. No electron back then. (I'm still a bit of an electron hater though :)
- JohnFen 5y ago> The really egregious thing here is asking for a Firewall exemption and not including the base driver in the box. A million times this. The electron thing is a sideshow. The real problem is asking for too much in the way of security exceptions.
- qwerty456127 5y ago> with a lot of unneeded code I've read this as "uuencoded" first :-) Imagined sort of like trojans obfuscate their code with Base64 but using a more weird encoding this time :-) > and then additional actual driver download. I bet you can just steal the driver form the temp dir or from the actual system after it installs and save for future usage.
- Macha 5y agoDid you see Logitech's previous native apps? Did you think they were better? Because they really weren't. Hardware companies fail at software is a much longer living phenomenon than Electron. (I could believe Logitech's current apps are an Electron like technology, but timeframe wise they predate it also, so maybe more like nw.js or similar, this article talks about roccat, which is a different company)
- pier25 5y agoYou don't need to install anything from Logitech to use most of their products.
- wayneftw 5y ago> ...by using Electron for their driver. Except they didn't use Electron for the driver. They used it for the management UI. > I'm sure that allowed them to iterate quickly, hire developers who know nothing but JS to build their driver package and ship the MVP with low costs! Pffft. Imagine thinking that people who choose Electron only know JS. Clearly that's incorrect as many companies choose Electron despite employing a multitude of native programmers. I'm one of them. Personally, I know C, C++, C#, Go, JavaScript, Python, TypeScript, SQL, Swift and Visual Basic...and I'll choose Electron to build GUIs every time. I also use React Native to build mobile apps. Pure native kits all suck compared to Electron or React Native and on top of their pure suckage you'll have to deal with the idiosyncrasies of each platform you deploy to. I don't just build them either. I run multiple instances of about 4-5 different Electron apps all day long without issue on an i7-4770, a CPU that was released in 2013, inside of an old refurbished machine from like 2014 or 2015. And that's under XFCE most of the day...but when do I go use my Mac or Windows machines I get the same exact experience from those apps thanks to Electron. But oh no! 300mb!! Unneeded code on my precious hard drive! Maybe stop whining and get a bigger hard drive if you can't handle 300mb. And I doubt you've actually looked into many of the native desktop apps that you're running to investigate how much of the code is actually necessary. Let's hear some of the great native apps that you run. What kind of work do you? I really want to hear about the 100% efficient native-only apps.
- voldacar 5y agoPeople like you are ruining the desktop computing experience. just stop
- somewhatbetter 5y agoCATIA. >But oh no! 300mb!! Unneeded code on my precious hard drive! If somebody from the "Hit a programer, they will know why did they got it" group lurking here, please consider the comment of wayneftw as a call for a dance.
- IshKebab 5y agoElectron is like 80MB, uncompressed. That isn't really the issue here anyway.
- _joel 5y agoI think far more people here prefer native apps than Electron. I know I do.
- duped 5y agoI doubt the driver is actually written in JS (I don't think that's possible on Windows, Linux, or MacOS). As a client to help configure the driver setup and manage its updates in a consistent way across platforms... is it really that bad?
- skoskie 5y agoI use Logitech’s software on three macs, and my honest evaluation is that it gets the job done, but just barely. Key cons: - Yes, it asks for a firewall rule, which I simply deny with no negative consequences. Still, it’s concerning that it even tries. - In order to save or backup your settings, you must create a Logitech account, and those settings will be saved on their servers. I would really just like a config file I can sync myself. - The frequency with which the software needs updates is baffling. On one hand it’s nice to get such support years after the purchase. On the other.. what the hell needs updating on a mouse? - The software UI sucks. And there’s no excuse for that given it’s just JS. - Somehow, after reboot Logitech’s drivers are one of the last things to load. So you have to wait over a minute, and sometimes much longer, for you mouse to be able to handle your inputs correctly, which is really frustrating. Key Pros: - The software does work. You don’t actually open the config UI very often, so it’s not like you’re constantly running an electron app in the background. - Let’s face it, the hardware is good enough to overcome the bad software.
- squeaky-clean 5y ago> The frequency with which the software needs updates is baffling. On one hand it’s nice to get such support years after the purchase. On the other.. what the hell needs updating on a mouse? I'm pretty sure it requests an update anytime any Logitech product gets an update, even one you don't own or have installed. A recent G-Hub update where the release notes only mention mice I don't own broke the battery detection on my wireless headset. Now it always says I'm at 2% battery. (Why did I even update?)
- skoskie 5y agoThat's really good point I hadn't considered. I'll bet you're right.