4 ms·
Meh, there's often reasons to reinvent a portion of an API. You'd need to be more specific about what you see there that's an issue. I also pointed out Telegra
by Klonoar 9y ago
Meh, there's often reasons to reinvent a portion of an API. You'd need to be more specific about what you see there that's an issue.
I also pointed out Telegram because people, consistently, in every one of these threads, trot it out as an example of a native chat app (I don't count the Qt version in any of this, because it does not in any way feel native on macOS).
To be honest, I welcome anyone to point out a competing cross-platform chat application that does almost as much as Slack does and doesn't eat up memory.
- rosser 9y agoNo-one else doing it "right" is not an excuse for anyone to do it "wrong". EDIT: Leaving aside the question of whether the other multi-platform messaging apps also do it that poorly, and merely running with your assertion to that effect. I have neither the time nor the inclination to gather data on that question.
- didibus 9y agoNo one else doing it right can be an argument to show that its because no alternative is much better, and so Electron is actually the possibly right choice. It still being too slow or memory hungry for your liking still remains though. But it seems that there might not be an obvious solution to this that does not compromise on features.
- rosser 9y ago"No better alternative" != "right". As you observe, a compromised choice is still compromised.
- didibus 9y agoAll software engineering choices are compromised choices made from carefully considered trade offs. To argue they made the wrong choice, you have to show they made the wrong trade offs. I understand you mean the user experience is still not ideal, but when would it ever be? When will performance or RAM usage be "ideal"? What does that mean? Should it compute in 0ms and use 0% RAM? There is no right ideal, or true ideal. The idea of an ideal is itself a choice of trade offs. Your ideal could be that you absolutely need under 20ms response times on all UX actions, while never exceeding 100mb RAM. And that could be ideal for you, but might still not be the right ideal for me, hoping to run it on a modded gameboy hardware. And if that was the case, can you compromise on feature? If not, and its not currently technically possible to achieve your performance ideal and have parity of features, then what? Is the right choice then to not release a desktop client for slack at all? So if you know a way to achieve your ideal, then you can propose that alternative, and you can say, here is how, without much more cost of development, you can achieve X, Y, X improvement on performance while keeping all features. But, if you do not know, and have no known examples, it could indicate that it is not currently technically known how, and thus impossible with the current hardware and software knowledge at hand. I'd also say that in the case of Slack, their ideal is probably defined more in terms of profits. So it could be said to be the right choice, simply because of how popular their service is and has remained, even though they picked Electron for their desktop client.
- manigandham 9y agoNothing is perfect, every choice is a compromise. As a company, there are limits to how much time and effort is spent while growing their business. How much RAM is used is very low on the list of considerations.
- rosser 9y agoI would be fine with the amount of RAM used, if Slack didn't also materially reduce my battery life, by keeping my CPU — and fan — spun up. Charge-discharge cycle counts are a limited thing. They're directly shortening the lifespan of my hardware, doing that.
- manigandham 9y agoIs that really your argument? Slack has a material effect on your hardware life - as opposed to all the other usage? Is slack the only thing you're running? Why not just use another tab in your existing browser then? Or another service entirely? Either way, it doesn't change anything in creating a widely used application for the least amount of time and effort. The vast majority of their users will not care or even notice if there was a more efficient native app.
- rosser 9y agoIt is the only thing reliably using 10-20% of my laptop's CPU, while idle. Having the Slack iOS app even open drops my battery at least 10%/hour. Even Facebook's app or using a mapping app, actively listening to the GPS birds, don't do that. My employer dictates the choice of communications tool. I don't just get to "pick another service entirely." EDIT: And their site's 2FA (which I'm required to use, because $work) also reliably gives me "too many login failures" on the first login attempt, so using it in a browser tab is a non-starter, even without also losing desktop notifications. With the amount of money they've been given, both by VC and by customers (I know what we pay them per month, and although we're not a small company, we're far from their biggest customer), this quality of software and service is absurd.
- saagarjha 9y ago> there's often reasons to reinvent a portion of an API Yes, but I don't feel that a message app really needs to do this to the extent that Telegram does–they've managed to make their app look out of place on macOS.
- Klonoar 9y agoMmmm, that's really vague though - what exactly feels out of place? The only applications I use on a daily basis that feel like they're "Mac" are Safari, Messages, Xcode, and I guess Finder... all of which are built by Apple. Maybe Paintcode counts too? The rest of the apps I find myself using don't use those same UI/UX patterns/designs, and I don't think it matters that much: Photoshop, Terminal, Telegram, Bear, Fantastical... the list goes on. The applications that keep me coming back are the ones that are smooth and don't interrupt my train of thought (most everything here), or have some big use case (Photoshop) that keeps me coming back. I'll also point out one more time that Telegram is what people bring up every time this discussion rolls around, so they're clearly doing something right and people must not think it looks _that_ out of place. Hell, I'd argue that the consistency of UI/UX on Apple products matters more for the initial purchase and wow-factor than it does once a user has settled into their environment. Every application does not need to function and look exactly the same. To be honest, this all feels like moving the goalposts, and is why I usually refrain from getting into these discussions.