Making a project just to learn is par per course. Chat… especially non federated chat isn’t really that hard to implement as a protocol. It’s the UX that’s hard to nail down, and if they can get it right it won’t matter if Matrix existed first.
When I hear discord I generally think of voice/video chat and screen sharing, and less about text chat; this may be a side effect of all the bridges, though, as I tend to chat on IRC and all three of my primary discord channels are bridged.
I run matrix, mattermost, and rocket.chat. I like the api/whatever of mattermost but I really like the overall feel of matrix the best.
Matrix also has nothing to do with UI or UX. The clients do. Write a new client if all you care about is UI/UX. You have a much higher chance of success.
Mumble/Murmur and Teamspeak have better voice functionality than Discord, because they really are designed for voice chatting.
> But not in text (Mumble severely lacking, Teamspeak marginally better).
Concur, and this, along with all-in-one Slack-like rich URL handling leads to selections of discord.
A more OSS friendly stack of Pidgin + Daemon | IRC & Mumble/Murmur seems to have the best scaling, and the best of both worlds, at least in my opinion because it has the lowest cost, richest functionality, and can scale the highest in terms of users without being dependent on a commercial service. I say this because I have seen Mumble/Murmur with > 2000 active users which is possible due to the rich permissioning system and excellent performance.
You mean another IRC-like? :)
As much as we can all agree that IRC-likes, and even IRC's predecessors are wonderful and responsible for much of the progress we have today, I think we can also fairly say not every chat application from now unto forever is an IRC-like.
I would (and I think fairly) catagorise a set of slack-likes and IRC-likes differently, with matrix occupying a grey area inbetween.
Sometimes it's worthwhile to consider that the "third party rules" you don't want to abide, are there for good reason.
Furthermore, sometimes the underlying reason for those rules is something you can hack on and open up.
"Oh we won't ever support feature X because of legacy arch Y so no PRs for feature X please". Well, perhaps you can solve legacy arch Y and help everyone at a more fundamental level.
As if the world needs yet another slack-like.
xkcd_15_competing_standards.png