The point is it's not fair that Terms of Service can impose that restriction. Just like it wasn't fair when you were only allowed to use phones that you rented from your phone company.
Why isn't it fair? They run the service. What gives other people the right to tell them how to run it? If you don't like their terms, there are about 100 alternative projects you can use.
There are pretty clear, practical reasons you might want to control the client of a commercial network service.
Phone companies are different in that they were monopolies with special legal status. Slack, on the other hand, is just one of many private companies offering roughly equivalent services.
You can still argue your case, of course, but phone companies are a bad analogy here.
The phone company is the sole-source provider and you couldn't opt for another platform. The more relevant analogy is soda fountains in a restaurant - the provider chose Coke, but I want Pepsi. (My OSS founder wanted Slack, I want discord.)
That's a different medium, although I understand your point: Slack is the sole source provider of communicating on the Slack network. Personally, I don't think this is a problem or should be fixed because of how I see the tradeoffs and side effects. Similarly, I want Apple to run their own app store and not allow sideloading because I prefer the set of tradeoffs that come with that, versus the other reality.
The value of Slack Inc is their API, which is currently de-facto locked to their client. People would still pay for Slack if they could use alternative clients, because the client is not the value.
You can argue that their client is not as good as it could be, that you have greater skills to deliver a better product, etc. But it has value, otherwise we'd all be using curl to access the Slack API with no downsides. That's clearly not the case by far.
i do agree it's fair, but it's also true that the service provider could argue that they are supposed to be in total control of the service, including the front-end.
It's by societal consensus that this can be made fair, and to convince people that it is fair, there needs to be a logical, indisputable argument that it's fair. Otherwise, the service providers can always just hide behind the counter-argument of being in control and TOS etc.
In the case of Discord, for example, the terms of service doesn't even mention third-party clients. Also, these services are accessible from web browsers, which are made by third parties. There are more reasons, like users being able to run whatever they want on their own computers, but just the ones above are enough.
Ripcord isn't a derivative work, both practically and in the legal sense. It's implemented from scratch. Ripcord isn't a resell of their service or a sublicense of their service.