Live data from Hacker News

Rewriting the Slack Python SDK

slack.engineering

51–59 of 59 posts

Re: Rewriting the Slack Python SDK

#51

It still amazes me that Slack, with its infinite resources, hasn’t built native clients. One code base is nice and all, but man I loathe the Electron app.

Honest question: would you buy a third party native Slack client? I started an open source Slack client but was struggle to find tractions. Yes the Slack electron client is bad, I hate it with passion but it just works. And most of the users I surveyed think so too. Either they’re not using Slack at all, or they just don’t care if it’s electron/web-based/slow (Stockholm syndrome?).

What does Stockholm syndrome have to do with people being okay with the performance of it. The only people that mostly have issue with slack are the devs themselves who are aware of electron.

Re: Rewriting the Slack Python SDK

#52

It still amazes me that Slack, with its infinite resources, hasn’t built native clients. One code base is nice and all, but man I loathe the Electron app.

Honest question: would you buy a third party native Slack client? I started an open source Slack client but was struggle to find tractions. Yes the Slack electron client is bad, I hate it with passion but it just works. And most of the users I surveyed think so too. Either they’re not using Slack at all, or they just don’t care if it’s electron/web-based/slow (Stockholm syndrome?).

Slack is against alternative clients, just like Twitter is. So it's risky to build a client because they can limit API access.

Re: Rewriting the Slack Python SDK

#53
post #30

Earlier quoted context omitted.

What are some examples of well-written UI-heavy native desktop apps? I'm curious because I see the usual complaints whenever Slack (or another Electron app) is mentioned, and largely agree with them, but what's an app that has actually done native well across Windows/macOS/Linux?

Adobe Photoshop & its friends? Microsoft Office? Just a few examples, I'm sure there's plenty more.

Those either are not single-codebase-crossplatform or are architectured like a game engine. Yes Electron is not optimal but if you want a "rich" UI with fancy animations and custom interfaces for everything instead of a generic winforms-style UX then the browser is a good compromise. That or feel free to manually build everything using OpenGL/Godot/Unity. (Using a browser means you are shifting all the game-engine-level graphics requirement to a billion dollar company. The problem doesn't actually magically go away.

(And to be fair, UI development in XAML on Windows is not too different from HTML/CSS/JS i.e. no Drag and Drop absolute positioning, everything is relative with a constraint system bolted on top.)

Re: Rewriting the Slack Python SDK

#54

Earlier quoted context omitted.

Have you actually used the Slack client before ? It's anything but reliable. As you would expect from a glorified IRC client that somehow uses 2GB of RAM (lots of accounts).

I use the Slack client every day at work on my Mac and it works fine. It is a lot more than a glorified IRC client —- if that’s all it is, then why has Slack built a successful business?

Seeing that Slack isn’t profitable - by most definitions they aren’t “successful”.

Re: Rewriting the Slack Python SDK

#55
post #51

Earlier quoted context omitted.

Honest question: would you buy a third party native Slack client? I started an open source Slack client but was struggle to find tractions. Yes the Slack electron client is bad, I hate it with passion but it just works. And most of the users I surveyed think so too. Either they’re not using Slack at all, or they just don’t care if it’s electron/web-based/slow (Stockholm syndrome?).

What does Stockholm syndrome have to do with people being okay with the performance of it. The only people that mostly have issue with slack are the devs themselves who are aware of electron.

I'm not entirely sure, that why I put a question mark on it. Some of the users I surveyed are devs themselves and to my surprise, they think Electron is good. I've just read this article[1] and I think it's best to describe the situation of being a JS dev

[1]: https://medium.com/@s_27669/i-am-definitely-maybe-suffering-...

Re: Rewriting the Slack Python SDK

#56
post #5

I was trying to update my all-in-one duct tape Docker image[0] yesterday and was surprised to see that they ramped up the complexity so much for this release, I had to install a new C library just to be able to compile a dependency of a dependency they added.[1] [0]: https://github.com/underyx/url [1]: https://github.com/underyx/url#5-2019-05-31

C extensions are a pretty common thing in the Python ecosystem, you're making this sound a lot more drastic than it is

Re: Rewriting the Slack Python SDK

#57
post #56
post #5

I was trying to update my all-in-one duct tape Docker image[0] yesterday and was surprised to see that they ramped up the complexity so much for this release, I had to install a new C library just to be able to compile a dependency of a dependency they added.[1] [0]: https://github.com/underyx/url [1]: https://github.com/underyx/url#5-2019-05-31

C extensions are a pretty common thing in the Python ecosystem, you're making this sound a lot more drastic than it is

They are, but not for an API wrapper.

Re: Rewriting the Slack Python SDK

#58
post #30

Earlier quoted context omitted.

What are some examples of well-written UI-heavy native desktop apps? I'm curious because I see the usual complaints whenever Slack (or another Electron app) is mentioned, and largely agree with them, but what's an app that has actually done native well across Windows/macOS/Linux?

Adobe Photoshop & its friends? Microsoft Office? Just a few examples, I'm sure there's plenty more.

Adobe and Microsoft are orders of magnitude bigger than Slack, so it isn't really the best comparison. And none of those apps support Linux.

Re: Rewriting the Slack Python SDK

#59

Earlier quoted context omitted.

I think that having just one common ui system makes a lot of sense. We want web apps to work as well as Native applications, and vise-versa. I support the concept of Electron, but my question is - exactly why is it so bloated? Doesn’t it come with a built-in Chromium? Why is that? Wouldn’t it make more sense if it used the machine’s default browser engine? You would need to look out for different browser versions, bu…

> We want web apps to work as well as Native applications This is fundamentally impossible.

That’s not what I mean, really. Chrome book already has a non-negligible market share. Practically everything is a “web app” already. Sure, there are going to be use cases for lower level native software, but in reference to Electron I think it’s obvious that we are better off getting things to run better in the first place. Obviously Browsers weren’t originally designed to work this way, but it’s just how things have turned out. And developers are very familiar with html/css/JavaScript.

But of course getting the major browsers to play along has always been slow Microsoft as mentioned already.

But I understand why it makes sense to skip Electron in its current state

Post reply on HN