6 ms·
> Here's a thought: how about you write a native app for each platform? I can guarantee that the hundreds, if not thousands, of engineers working on AppKit and
by AceJohnny2 9y ago
> Here's a thought: how about you write a native app for each platform? I can guarantee that the hundreds, if not thousands, of engineers working on AppKit and Windows APIs are a lot better at getting this to work than your team.
You're joking, right?
Have you not noticed any of the pain that anybody trying to make cross-platform app goes through, and hence the huge popularity of cross-platform frameworks?
- sushisource 9y agoJust use Qt. It's harder, but not dramatically harder, than a web-based implementation.
- panopticon 9y agoThe web-based implementation means you only have one codebase for both Slack in the browser and Slack in Electron. So adding Qt in addition to their browser client means they have two disparate clients instead of one client (plus Electron glue code).
- snuxoll 9y agoAnd? I am absolutely tired of companies taking a giant dump on the experience of desktop applications. If you're going to make a desktop app make a damned desktop app, stop making everybody accept a terrible electron app because "oh no, I have to do extra work" - give me a break. How many companies still maintain native iOS and Android apps? Lots. Qt even feels (mostly) native on GNOME desktops these days, if you can't afford to develop a 100% native app for Win, Linux and Mac then at least use a real toolkit that gets you 80% of the way there whereas Electron gets you 0%.
- BukhariH 9y agoHonestly, I don't think you can point to any actual business reason for a native client. Slack makes majority of their revenue from large organisations buying thousands of seats in one go and a native desktop client is sadly not a huge selling point for the sales team. At the end of the day Slack has to optimize for growth and there's a huge list of features that will bring more ROI than native clients which will require trebling the size of the code base.
- snuxoll 9y agoFine, if they don't have any business reason for a native client they should just can the slack desktop app because it provides 0 benefits over the web app then. If you're going to do something do it right or don't do it at all.
- johannes1234321 9y agoThe desktop app allows them to Mark the checkbox of having a "native" app when selling ... And in my environment quite a few folks prefer the election app over the browser. I don't know why, though.
- always_good 9y agoI prefer a dedicate app because I can alt-tab through a relatively limited number of apps compared to the dozens of tabs I may have open. For example, the desktop app will show notification count in the dock. Imagine if all of your apps had a browser version and you could always pick between a tabbed version vs standalone version. To use the tabbed version of everything would be like using an AOL app back in those days where you alt-tab to the AOL virtual window and then find the app you want within it while wishing you could just use the OS' window manager system.
- johannes1234321 9y agoI simply have it in a browser window in a specific part on my desktop which I manage via i3wm. But, well, everybody has their preferences.
- dman 9y agoKilling battery life of their users isnt a business reason?
- arvinsim 9y agoIf doesn't affect their bottomline, then why will they bother?
- clintonb 9y agoI keep hearing bad things about Electron, and have only now bothered to look it up. As a user of Slack, and whatever other applications I happen to use that are based on Electron, I don't care that the application isn't native. Electron is "good enough." I would imagine that 99% of users feel the same way. Feel free to articulate your issues with such apps. So far, no one has really done that in the various comments online disparaging Electron.
- saagarjha 9y ago> Feel free to articulate your issues with such apps. So far, no one has really done that in the various comments online disparaging Electron. What? Every time Electron comes up, people bemoan its battery and RAM usage.
- tspike 9y agoIt's slow. It kills your battery. It disregards standard platform idioms.
- s73v3r_ 9y agoSo what? You're saying that like it's this terrible thing. It's not. Especially because, as has been shown, Electron apps are extremely sorely lacking in things like accessibility.
- bananaboy 9y agoYeah, but unfortunately businesses prefer to sacrifice user experience for developer convenience and expediency. I wish it weren't true. There are a couple of cases where you can avoid that in the text editor and source control space: Sublime Text is cross-platform and native, and so is SourceTree (although it's become quite buggy). So just avoid GitKraken, GitHub Desktop, VS Code, Atom.
- panopticon 9y ago> You're saying that like it's this terrible thing. I made no such claim. I was just providing a legitimate business reason for going the Electron route.
- deleted 9y ago[deleted]
- matthewmacleod 9y agoNo. It's not hard to write a cross-platform app, but it _is_ more difficult and more expensive than writing an app using a cross-platform framework or web stack. That's the tradeoff, and I wish companies would be more honest about it. But a company with as many engineers as Slack doesn't really have an excuse beyond "we want to spend less".
- always_good 9y agoAlso, I have a problem with the word "hard" in the context of software development. Things are usually hard not because of some lofty technical goals, but because the sum of all the papercuts is hard. It's just developer hubris to look at the trade-offs someone makes and say (on HN of course) "meh, these other trade-offs aren't even that hard, c'mon!"
- menckenjr 9y agoIt's painful if you haven't thought it through or have very little money (or want to cheap out on hiring developers who know what they're doing), and it's painful for the developers if management has been BS'ed into believing that a "cross-platform" framework can magically make their bonuses bigger by cutting costs.