Interesting, what makes you think the surface area of Slack is larger than that of WhatsApp, for example?
I think the latter hides a lot of complexity behind a simple UI, most notably all the E2E encryption logic and the purely client-side message storage, with an optional backup system and even its own built-in remote access server (for the web client).
Compared to that, Slack is mostly a HTML renderer as far as I can tell, with most of the complexity server-side (e.g. complex notification rules, multi-client support etc.)
I suppose the poster above you is referring to user experience - WhatsApp doesn't even have reactions, never mind the huge list of plugins that slack has. The only thing in favour of WhatsApp as a user is the encryption, which AFAIK slack just doesn't bother with (maybe that changed now).
Iām still not convinced that all of these user-facing features necessarily translate into a larger client codebase.
My guess is that WhatsApp (and Signal, Matrix etc.) client logic is much more complex, since so many things that are fairly easy to do server-side need to be reliably performed in the client instead once E2E encryption is introduced.
I think the latter hides a lot of complexity behind a simple UI, most notably all the E2E encryption logic and the purely client-side message storage, with an optional backup system and even its own built-in remote access server (for the web client).
Compared to that, Slack is mostly a HTML renderer as far as I can tell, with most of the complexity server-side (e.g. complex notification rules, multi-client support etc.)