Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

You seem to believe that companies do what's best for their users. Not sure in which world you live: companies do what seems most profitable for them (and pray that it is).

Can we at least agree on the fact that it would not be that difficult (and costly) for Slack to actually expose an API allowing for third-party clients? That way I could have a lightweight CLI client and I would be fine with most users staying on their crappy Electron client.

I guess they don't do it for a reason, which is probably not user experience. Maybe having only official apps is (or seems, again) better for lock-in?



Couple reasons:

1-An external API is a product, you have to maintain it, keep it backward compatible even when you change your internal models, monitor it, protect it against attacks, etc. So no, I do not agree that it would be easy for Slack to expose an external API for 3rd party clients. It would be at least millions worth of investment.

2-A lightweight CLI client for Slack? Let me tell you, this would have a very very tiny user base. Probably just you, and even you would be bored of it after 1week. Would it be worth it for Slack to invest millions in an external API just so a couple hundred geeks can make their own crappy client?

3-Analytics. Slack runs analytics on usage of their app, in order to know what users use and want. Can't do that if you don't own the frontend.

4-Brand. If one of your main competitive advantages is a good UX (And believe me, it is the case for Slack), would you want to grant people the right to create crappy apps that ruins the UX and turn people off your product? This is what is killing Android brand value for example. Sure it's open, but it means there are a lot of Crappy UIs that turn people off.

The beauty of liberal capitalism is that ultimately, at least to some extent, what is good for users is good for the company, so incentives are aligned to some extent, and very unlikely to be completely opposed as you seem to suggest. So yes, I believe that companies are taking strategic decisions (such as not shipping an external API and 5 different native clients) in large part because it does indeed benefit the majority of their users.


1- I would hope that they already maintain and protect their private API against attacks (it has to be exposed to the internet, right?), and that they keep backward compatibility for the ElectronJS (and isn't the Android app native?) that are not updated out there. You forgot to mention something like "they would have to invent access control", to which I would answer that they already need that. They would literally just have to open their API to third parties. I doubt this would cost millions.

2- Don't assume too much. I use IRC from a CLI. But anyway you are just repeating your previous point, which is that you think it would cost millions.

3- Well, they would know what the third-party apps use in the API. They could also provide integrations for most popular languages, and those would send telemetry (what do you think the Google Play Services do?). For my crappy app, probably they don't need to know what I do, I am just a useless geek as you said.

4- Counter example: I was always able to connect my crappy app to my GMail account, and it did not prevent GMail from essentially taking over e-mail. But the couple hundred geeks who don't like the web frontend can use their crappy e-mail app, and everyone is happy.

> The beauty of liberal capitalism is that ultimately, at least to some extent, what is good for users is good for the company.

Respectfully, that is the most naive comment I have read today. I don't even know where to start answering that, so I'll just pass :-).




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: