@ -10,7 +10,7 @@ I'm [`gravel`](https://coderberg.org/gravel/gravel), a Session user who has made
As with all Session chats, they communicate with apps solely through onion routing. Session Communities also include their own file hosting, contrary to direct messages and closed groups, for which the hosting is provided by the Session team. Contrary to DMs and groups and owing to their unlimited user capacity, the content in Communities is not end-to-end encrypted, which should come as no surprise. Session Communities represent part of the same trend as [Discord servers](https://discord.com/) or [Matrix chatrooms](https://matrix.org/).
The user can join a small selection of official Communities from the Session apps. If the user wishes to join any third-party Communities, they have to copy-paste a join URL into a textbox and press the "Join" button. 100+ Communities available.
The user can join a small selection of official Communities from the Session apps. If the user wishes to join any third-party Communities, they have to copy-paste a join URL into a textbox and press the "Join" button. At time of writing, there are around 120 known Communities.
## Accessibility and discoverability issues
@ -19,7 +19,7 @@ There are a number of difficulties users face before discovering the wide pallet
- The app provides little guidance on how to participate in Communities.
- The only in-app Communities are official read-only Communities from the Oxen team.
- These only contain updates on Oxen projects.
- Their official Community for discussing Session was taken off the default list due to moderation issues
- Their official Community for discussing Session was taken off the default list due to moderation issues.
- No intuitive way of joining a Community is available.
- Clicking on a Community join link brings the user to a 'Not Found' page in the browser instead of being captured by the app.
- Posting a Community join link in the app provides no invite embed. Invite embeds can only be sent to existing contacts via an unassuming "Invite" feature.
@ -44,7 +44,9 @@ The current process for a new user of Session to successfully discover and join
1. Click "Join".
1. (*Optional*) Go back to the main menu only to find the Community hasn't yet shown in the list of open chats.
As you can see, there is room for improvement in the way users discover Session Communities. While developers may have hidden hints of a Community discoverability feature in their roadmap, the truth is that any such feature has very low priority, as do Communities in general. As such, it is likely that we will not see any such feature within 3 years' time. As Session grows, a feature is needed in the interim to keep the pressure on Communities, keep them evolving and show their true potential, otherwise a future discovery method will leave the Communities wholly unprepared to handle waves of new users.
As you can see, there is room for improvement in the way users discover Session Communities. While developers may have hidden hints of a Community discoverability feature in their roadmap, the truth is that any such feature has very low priority, as do Communities in general. As such, it is likely that we will not see any such feature within 3 years' time.
As Session grows, a feature is needed in the interim to keep the pressure on Communities, keep them evolving and show their true potential. Otherwise, a future discovery method will leave the Communities wholly unprepared to handle waves of new users.
## Honorable mentions
@ -59,7 +61,7 @@ Below follow some alternate solutions to provide Community discoverability that,
- A moderation lapse or untoward atmosphere in any of the listed Communities may take a while for the team to detect and could eventually mean a scrap for this entire feature.
- Community servers are allowed to purchase [Oxen Name System entries](https://oxen.io/oxen-name-system-ons-the-facts) and be listed in the app based on this purchase.
- This description greatly under-estimates the work needed to implement this feature, including a new ONS namespace and a service node backend for fetching Communities. The developers don't place enough importance on Communities to spend time on this.
- This solution dodges the censorship question. In reality, not all listed
- This solution dodges the censorship question. In reality, not all Communities with an ONS entry can be allowed in official clients, so we are back at square one.
- Clients diverge in listed Communities based on their censorship liability.
- Taking inspiration from Telegram, this means the iOS and Google Play Store versions of Session would list a limited number of official Communities, known to be well-moderated, while the Desktop and [F-Droid](https://f-droid.org/) version take more liberty with the Communities displayed.
- However, the project's speed already greatly suffers from the need for feature parity accross platforms. This would further complicate efforts to unify parts of the codebases.