Live data from Hacker News

When a rewrite isn’t: rebuilding Slack on the desktop

medium.com

41–50 of 408 posts

Re: When a rewrite isn’t: rebuilding Slack on the desktop

#41
post #20

For me the gold standard of Chat applications is always going to be mIRC. It supports a ton of plugins, consumes 10-50mb of memory and little to no CPU. You could be connected to multiple servers and channels with DCC scripts running and you still wouldn't notice that it's even running. Even though Slack is using react now, they are still using electron under the hood. Which means it can never match the snappiness of…

mirc is windows only? there are many web-based irc these days and they worked well

Re: When a rewrite isn’t: rebuilding Slack on the desktop

#42

How about a native client? I think it's safe to assume that Slack has the resources for this.

Ripcord [1] is a (native) desktop chat client for Slack and Discord written in C++ and QT.

It was posted a few months ago [2] and I’ve been using it since then, it works great.

[1] https://cancel.fm/ripcord/

[2] https://news.ycombinator.com/item?id=19617699

Re: When a rewrite isn’t: rebuilding Slack on the desktop

#44
post #11

Earlier quoted context omitted.

No matter the available resources, maintaining three separate desktop apps as well as a web app would mean fewer features and more bugs across the board. And Linux would probably be left on Electron (with less support attention), if not abandoned altogether.

Past a certain point, the downsides of Electron outweigh the downsides of native apps. We've crossed that Rubicon years ago.

If this was the case we wouldn't see so many Electron apps. You just don't perceive enough of the upsides to see why the decisions are being made.

Re: When a rewrite isn’t: rebuilding Slack on the desktop

#45
post #34

Earlier quoted context omitted.

What about React Native on the desktop?

React Native isn't a zero-effort way to port a web app to a native app. It lets you share code where it makes sense, but you're still maintaining separate applications targeting different platforms that each have their own quirks and needs. It's similar to how you can't just port a regular native desktop app by using a different compiler; your business logic may be compatible, but you'll still have to do legwork on t…

I know, I'm a React Native developer.

I'm just saying that "native client" doesn't necessarily mean separate Mac, Windows and Linux ports; furthermore, for a billion dollar company, a native client of _some_ kind isn't an unrealistic demand.

Re: When a rewrite isn’t: rebuilding Slack on the desktop

#46
post #19

Earlier quoted context omitted.

Electron makes it a desktop app. That part has not changed.

Just because you don't see the browser it doesn't mean it's not still there. No, js/html "applications" are not desktop apps, they're web pages. Doesn't matter how you hide it.

If an app is running on its own and not in a web browser, it is a desktop app. The language or framework it is written in does not matter. Do you consider VS Code a web page as well? What about Spotify?

Re: When a rewrite isn’t: rebuilding Slack on the desktop

#47

How about a native client? I think it's safe to assume that Slack has the resources for this.

Ripcord [1] is a (native) desktop chat client for Slack and Discord written in C++ and QT. It was posted a few months ago [2] and I’ve been using it since then, it works great. [1] https://cancel.fm/ripcord/ [2] https://news.ycombinator.com/item?id=19617699

Looks neat. Definitely a developer-designed UI.

Re: When a rewrite isn’t: rebuilding Slack on the desktop

#48
post #32

I will consider this benchmark vindication both for myself and the times I've had to argue as to why Electron isn't the issue, as well as the commentator from many moons ago who worked at Slack, dropped in here and explained why Electron wasn't the problem (rather, poor engineering on Slack's part was), and then was ripped to shreds over it. In fact I'm sure this comment will bring out native fanatics in force. At an…

And yet, the performance is still bad. And that is only 1 of many reasons why electron is bad.

Re: When a rewrite isn’t: rebuilding Slack on the desktop

#49
post #11

Earlier quoted context omitted.

No matter the available resources, maintaining three separate desktop apps as well as a web app would mean fewer features and more bugs across the board. And Linux would probably be left on Electron (with less support attention), if not abandoned altogether.

Past a certain point, the downsides of Electron outweigh the downsides of native apps. We've crossed that Rubicon years ago.

Pretty sure we crossed the Rubicon in the other direction, as it was basically the popularity of Electron apps that forced Microsoft to abandon their own browser rendering engine in favor of Chromium.

If you had come to me 10 years ago and said "Microsoft will drop their browser and use Google's code," I absolutely would not have believed you.

Re: When a rewrite isn’t: rebuilding Slack on the desktop

#50

How about a native client? I think it's safe to assume that Slack has the resources for this.

Ripcord [1] is a (native) desktop chat client for Slack and Discord written in C++ and QT. It was posted a few months ago [2] and I’ve been using it since then, it works great. [1] https://cancel.fm/ripcord/ [2] https://news.ycombinator.com/item?id=19617699

Thanks, I'll take a look. I tried https://volt-app.com a while ago but it had some bugs that made it unusable (for me) with Slack.

I'm also a bit concerned of using a closed-source client with Slack.

Post reply on HN