Couldn't we use the upcoming username feature to build a decentralized signal network? For example with a modified client or maybe just a modified libsignal library we could parse the instance from the username which would look like an email address (ted.42@example.com or andrew.62@andrew.chat). If the username doesn't have a domain part it just uses the default instance (so Peter just has the username peter.94).
Maybe we have some people here who are already familiar with the Signal codebase and willing to assist?
EDIT: Yes I know Session and Matrix exist but Session is to extreme and technical and Matrix is more focused on communities and groups which aren't even encrypted. Besides that both of them have a much smaller userbase compared to Signal.
I'm gonna be honest. I chose a random article by JWZ and read it. The only thing they are talking about is the contact discovery system. If they don't want contacts to be uploaded (encrypted) then simply don't give signal the permission. And that the author moves to facebook messenger because there
at least the privacy failings are obvious
just shows how the author isn't even interested in secure and private messaging but only in defamig signal