People choose platforms because of their functionality, not because of their code licensing status - see the case of Scala, linked in a different sibling comment. Matrix and Zulip, even after years of chasing, still sadly haven't caught up to Discord functionality- and UX-wise; until that happens, people won't have a good reason to budge.

Regarding IRC, Drew is kind of famous with his ascetism, claiming that the impossibility to share GIFs, videos, files, use threads, have internal chat history, are all features rather than limitations[1]. The thing is, people don't care about it, they'll simply vote with their own legs. Mail and mailgroups face a similar UX challenge. Not everyone is willing to endure the pain of learning and using mailgroups and IRC just because they're FOSS.

[1] https://drewdevault.com/2019/07/01/Absence-of-features-in-IR...

A piece of functionality that's missing/broken by design in Discord is data export. Discord client can show me all the conversations I've taken part in. When I request a copy of all data Discord "has on me" I get only the messages I've sent (which is borderline useless), and I am only allowed to do that once a month, with a days-long waiting period.