Speaking as an 18 y.o. doing my first year college online, I wouldn't have made it through quarantine without Discord. I've a server with my high school friends and since Discord lowers the barrier to join a voice call so much it's super chill to just hop in a channel when doing homework or playing a game or whatever else, and anyone else who's free can join.

I really wish there were competition, but there's nothing AFAIK that can replicate this particular experience except for Teamspeak, which has other problems.

Why not matrix?

Matrix the protocol is not there yet. Element, its main client, lacks too many features to have the same experience:

- No concept of servers (in discord parlance). Its equivalent (matrix spaces, in https://github.com/matrix-org/matrix-doc/blob/matthew/msc177...) is in progress

- No included audio/video calls. You have to link them manually and use a third-party stack, such as Jitsi

- Even if you have Jitsi the experience is not the same. Discord's experience is like a chat room, except with audio and video. In Element it's more like a standard call

> - No included audio/video calls. You have to link them manually and use a third-party stack, such as Jitsi

To be explicit, no group audio/video. I run my own Matrix server for my partner and I and it uses webRTC based audio out of the box for 1:1 calls which we use every day, and sometimes video. No Jitsi enabled in my config. (I only share this so other readers can gauge if Matrix can meet their needs.)

Mind sharing the Synapse configuration changes you made to enable the audio/video calls over peer-to-peer?

I'm using https://github.com/spantaleev/matrix-docker-ansible-deploy and I can't recall off of the top of my head, but I'm pretty sure out of the box the coturn server will make webRTC "just work". I also explicitly made sure jitsi was disabled to make sure it wasn't using it, and yeah, this ansible playbook is game changing. I tried to run Matrix 3 different ways before giving up and using the playbook.