Idea name: Scalable Friction in Public Chats / Chat timeout settings
Description: Add a chat timeout setting that only allows a member of a chat to send a message at certain time intervals. Possibly implement this automatically for Public chats (eg. add a 10 second delay for every 100 members in a public chat). For private chat groups, allow certain roles to bypass the timeout.
Use case: As a user, I want to be able to set a timeout on how often a member of a chat can send a message so that the flow of conversation cannot be dominated by a single user and the conversation can remain usable as a chat grows in size.
Target user: Community organizers that want to use Signal for larger groups
Why this is important: An all-purpose chat platform needs to allow for optional and appropriate amounts of “friction” in communication. A private small group chat would be instant, but a massively public chat should have a good amount of friction to stop constant and unreadable flow of messages.
Any other comments: Think of the difference between (1) talking in your house with a group of friends, (2) talking in a conference / committee meeting, (3) shouting in a town square, (4) posting an advertisement in a local newspaper. From 1 to 4, you have an increasing amount of “friction” in communication.
It’s possible that “tribute to talk” could imitate this, but I think a timeout setting should be considered as well.
If this is implemented automatically for public chats (10 seconds for every 100 members), it could lead to natural balkanization of large channels as they become more unusable. For example, #NYC naturally splits into #NYC-manhattan and then into #NYC-manhattan-lowereastside etc etc