La communauté n'a pas de frontières : Discourse-as-a-Fabric - idéation et brainstorming

In ActivityPub Support: Phase 1 RFC I outlined an ideation exercise to evaluate the business case for having ActivityPub support in Discourse, and think beyond a MVP as-if Discourse was built from the ground up with federation in mind:

So hereby I will kick off the ideation with some brainstorming and without taking technical practicalities into account given current codebase. I realize there are many ins and outs and edge cases to all of this. This is a vision of what native federation support might look like. Here goes..

Community has no boundary

(Photo by Pixabay from Pexels)

We all share one planet :wink: intermingling in complex social structures. Why is a Discourse community restricted to a single forum?

I am admin of Humane Tech Community (HTC) and we cover a broad range of tech-related subject areas, having (sub)categories of “Freedom > Privacy”, “Alignment > Ethics”, “Alignment > Standards”. Too broad maybe, and many other Discourse forums exist that specialize on these categories, and in that field do a better job than we do. But for people interested in getting an overview of the entire field of humane technology the broad positioning makes sense.

Federating categories

What if I could federate our “Privacy” subcategory with e.g. the “Blog Posts” subcategory of the PrivacyTools forum? Maybe to only synchronise topics in one direction - as HTC’s privacy subcategory is broader in scope - where topics created at PrivacyTools appear on the HTC forum, and our members can interact with them. Topic posts on HTC forum are then transferred back to the topic at PrivacyTools and vice versa. The topics on both forums are kept in sync. Maybe I even want to one-way synchronize multiple PrivacyTools subcategories to “Privacy” at HTC. And why not sync with different privacy-related communities in a similar way.

Another example. Both the Feneas and SocialHub share a top-level “ActivityPub” category. There’s overlap in these, duplication, members from one community unaware of what is happening in the other community. This is an opportunity where “ActivityPub” is candidate for bidirectional synchronisation, where each forum then contains the same topic lists.

Federating tags and individual topics

Same can apply for tags, where a particular tag is configured to be federated. This might be e.g. set up such that any topic with #specification tag in SocialHub is federated to “Alignment > Standards” subcategory on HTC.

Topics may also be federated on a case-by-case basis, triggered by a toolbar command, where you specify the target forum to federate to, and maybe also select the remote category that the topic should appear under (i.e. the forum Category list is also federated for remote browsing).

Member mentions and profile views

When a topic is federated to another forum, any mentions within need to be adapted to reflect where the member resides. My @aschrijver handle at HTC might appear as @aschrijver@humanetech on the SocialHub forum after synching.

Since I am also a user on SocialHub in my profile settings I might connect the accounts, and after a verification this means that in the synched topics my local account handle can be shown.

When clicking a remote handle or member avatar the profile card of the remote forum is displayed. When clicking again to see the profile summary, it may show only the activity metrics on the local forum that resulted from synched topics interaction. Alternatively, and more interrestingly, it would show summaries from all known forums that are part of the federation config. E.g. I would then be able to find out that the response came from a very active, expert member on the other forum.

Direct messages and notifications

DM’s would be possible across all federated forums, not just locally, by tagging/mentioning the remote member in the DM. Other than that there would be no difference in the way that DM communnication takes place. It works the same as current local-only DM’s.

From all the federation stuff described above arises the need to also federate notifications. If I respond to a remote member’s post, like their post, or mention them in a synched topic thread, a UI notification may appear in the remote forum to notify the member. Email notifications are handle by the remote forum as well. However, if the member has linked accounts on both forums the notifications might be coming from the local forum where the interaction first took place.

Single sign-on

Note that in all the functionality described thus far, there’s no need to have SSO. A remote member does not have automatic privileged access to another federated forum. So what if they are mentioned in a one-way synchronised topic thread? In that case they will receive a UI notification and email coming from their own forum instance, and when clicking that are directed to the other forum (maybe in a new browser tab) where they can just view the topic. If they want to respond they have to first sign up and link accounts, to be able to respond.

Note that SSO is a tricky thing on the Fediverse, that has no good solution yet. But for Discourse-to-Discourse federation the SSO facility may be much easier to implement. If there were SSO integration, then clicking the notification might open the topic in-context within the current forum (as a ‘remote view’), and allow the member to interact with it seamlessly.

Federation management and complexity

This whole use case is described as-if Discourse was built from the ground up with federation support built-in. If all this is implemented it touches nearly all features of the product. Unlike the use case that started this thread - for FB-like personalized feeds - the federation here is carefully managed by forum staff, not on the whim of individual members.

Much of federation config is admin-only stuff. It should be done strategically and with a good plan, so as to keep the community organization and content intuitive and logical. The federation set up is built gradually over time as part of community-building workflow, not something that is casually added.

Interoperability

Of course this vision of ActivityPub support need not be restricted to Discourse. Any compatible software project could become part of the distributed community fabric. For instance forem’s open-source community building software and loomio collaborative decision-making platform, both of whom I just pointed in the direction of this post. But Discourse has the opportunity to take the lead in all this.

Fediverse integration

All of the federation support so far was limited to the forum/community business domain, but with ActivityPub integration interoperability can now expand to embrace the broader Fediverse, enabling numerous exciting business cases. Just to list some that randomly pop up with me now:

  • Announce forum posts fediverse-wide with toots on the Mastodon / Pleroma microblogging platforms.
  • Embedded images are auto-uploaded to PixelFed and served from there (nice for e.g. Blender communities).
  • Date/time toolbar allows setting up a full Mobilizon Event facing the fediverse, with full RSVP features.
    • Integration is 2-way enabled, where Mobilizon Discussions on the event are actually Discourse topics.
  • Create PeerTube topics with special video features, where the posts are the comment thread at PeerTube.
    • Same holds for Owncast if they add AP support (see this issue).
  • Your published topic automatically becomes a Writefreely blog post plus comment thread.
  • Embed parts of your forum into Nextcloud as an app via its ActivityPub support.
  • Integrate podcast features via Funkwhale (see recent video about podcasting support).
  • Obtain profile info from Flockingbird, professional social network under development (LinkedIn-like rolodex).

And look at the ever growing number of apps on the ActivityPub Watchlist and let your fantasy guide you :smiley:

Consequences

Forget for a moment all the technical hurdles and obstacles and consider what having this means for Discourse as a product. Or rather as Discourse no longer being ‘just-a-product’: Discourse has become a distributed community fabric.

Forum staff are no longer just that. They’ll adopt a much broader perspective to community-building. Both the community and community content exists all across the Discourse fabric. Staff will be actively looking at other Discourse instances, approaching their staff to forge partnerships and create interesting federation designs to slice and dice their community organization and content to be most interesting for the community member base.

The community members themself are also much better served. More interesting content will flow to their forum ‘portal’ and the forum will be more active than if it were just a local thing. Community members will be able to discover and interact with members of other forum instances all across the fabric. In fact the community boundary has been removed: Community has no boundary.

17 « J'aime »

Pour être honnête, je n’ai fait qu’un survol rapide, mais : quel problème essayez-vous de résoudre avec cette idée de tissu ?

2 « J'aime »

Tout d’abord, j’ai énuméré un grand nombre de possibilités sans restrictions, en guise d’entrée pour la séance de brainstorming. Mais personnellement, je rencontre deux problèmes que j’aimerais voir améliorés : l’un en tant que membre de la communauté, et l’autre en tant que facilitateur de communauté (membre du personnel de cinq forums actuellement, où je publie occasionnellement en croisé) :

  • En tant que membre de la communauté, j’ai des comptes sur 15 à 20 forums Discourse. Je jongle entre ces comptes (certains oubliés) et les mots de passe, et je consulte les plus populaires de manière carousel, site par site. Tous ces forums couvrent malheureusement de nombreux domaines de contenu qui se chevauchent, étant donné mes centres d’intérêt. Ainsi, même si vous me demandiez de rejoindre votre excellent forum sur mon sujet préféré, je serais encore très hésitant à créer un nouveau compte.

  • En tant que facilitateur de communauté, je rencontre un problème similaire et connexe. Ma communauté peut être petite, et vous pourriez décider de rejoindre une autre communauté dont le contenu porte sur des sujets similaires, partiellement chevauchants. Ou l’inverse. Ou encore, vous ne connaissez peut-être même pas l’existence de cette autre grande communauté (peut-être que moi, en tant que facilitateur, je sais qu’elle existe, mais est-ce que je dédierais un sujet épinglé pour informer mes membres ?).

Avec le support de la fédération en place, il y aurait un gagnant-gagnant pour les facilitateurs de communauté de coopérer dans le cadre de partenariats et de structurer l’organisation des forums pour nos publics successifs, tout en bénéficiant des forces mutuelles. Concrètement, cela impliquerait :

  • La capacité de fournir un contenu de meilleure qualité en sélectionnant les sources les plus appropriées à fédérer.
  • Une base de membres plus large – l’agrégat de la fédération – et donc plus de personnes avec qui engager des discussions intéressantes.
  • Des niveaux d’activité plus élevés sur toutes les instances de forums participant à la fédération, ce qui aide à retenir les visiteurs récurrents.

Trois aspects – qualité, quantité et activité – qui sont essentiels à toute communauté réussie :slight_smile:

8 « J'aime »

Je suis d’accord, cela peut être un véritable casse-tête. Je résous ce problème en ajoutant le flux RSS des communautés Discourse et en activant les e-mails de résumé hebdomadaire intégrés.

5 « J'aime »

Je viens tout juste de terminer « La Place et la Tour » de Niall Ferguson, qui traite de l’influence des réseaux sociaux (connexions sociales informelles et peu connues entre individus) à travers l’histoire mondiale. Ce livre est loin d’être parfait, mais il renforce constamment votre idée selon laquelle « la communauté n’a pas de frontières ». Les réseaux distribués sont plus résilients, innovants et égalitaires que les hiérarchies. Discourse se décrit comme « un redémarrage complet, une tentative de réimaginer à quoi devrait ressembler un forum de discussion moderne sur Internet aujourd’hui, dans un monde où smartphones, tablettes, Facebook et Twitter sont omniprésents ». À moins que l’ambition de Discourse ne soit simplement d’être le dernier et meilleur logiciel de forum pour un temps, l’intégration d’ActivityPub est clairement la voie à suivre pour défier sérieusement Facebook, Google, Twitter, etc., et bouleverser les attentes concernant ce qu’une communauté en ligne peut être.

8 « J'aime »

@aschrijver Bien sûr, j’adore personnellement les idées et la réflexion.

Cela semble tout à fait réalisable assez « facilement ». Pour la partie comptes, vous pourriez utiliser un Discourse principal qui agirait comme fournisseur d’authentification unique (SSO). Les autres forums Discourse devraient simplement rejoindre le système pour constituer une base d’utilisateurs centralisée : votre nom d’utilisateur est réservé pour vous sur tous les Discourse l’utilisant. Idéalement, les administrateurs/propriétaires de forums rejoindraient lors de la création de leur forum. Il serait possible de rejoindre plus tard, mais vous « devriez » simplement résoudre tous les problèmes de noms d’utilisateur en double apparus à ce moment-là : l’administrateur devrait demander à ses utilisateurs de changer leur nom d’utilisateur si celui-ci est déjà utilisé dans le système.

Pour la partie partenariat, des plugins utilisant Matterbridge et/ou l’API Discourse devraient pouvoir tout faire. Il y aurait du développement et du perfectionnement de plugins à faire ici.

Alternativement, pour les nouveaux forums, il pourrait exister une solution pour une approche « multisite » : créer des catégories sur un Discourse principal (qui pourrait être le même que le fournisseur SSO pour l’idée ci-dessus), où une catégorie = un « forum ». En ajustant quelques éléments, vous pourriez « verrouiller » un petit groupe de personnes dans la catégorie, supprimer les mentions des « catégories » principales et la réaffecter comme différents « forums ». En activant des sous-sous-catégories, chaque forum dispose toujours de deux niveaux de catégories. Il y a des ajustements à travailler, mais cela permet immédiatement une base d’utilisateurs commune et des messages privés inter-forums (vous êtes sur le même Discourse !).

Vous pouvez combiner les deux approches : avoir des forums hébergés sur le Discourse principal et des externes y faisant lien. Je pense que traduire votre vision en réalité est tout à fait possible assez facilement. Je suis potentiellement prêt à travailler là-dessus s’il y a un intérêt (j’aurais besoin d’aide, cependant). J’ai enregistré le domaine webforum.link qui peut être utilisé pour cela.

Note (après avoir vu le message précédent) : ActivityPub est quelque chose d’« ouvert ». Les idées ci-dessus seraient beaucoup plus « fermées » et restreintes aux forums Discourse. Il ne serait pas aussi facile de rejoindre non plus.

3 « J'aime »

@aschrijver, suite à notre échange sur le post ActivityPub Support: Phase 1 RFC - #50 by Mevo et en essayant de poursuivre la discussion ici (ce sujet est plus approprié) :

Il y a quelque chose que j’ai trouvé assez intéressant récemment : certains ont créé un marché décentralisé et gratuit appelé Openbazaar. L’idée était essentiellement d’avoir quelque chose de totalement ouvert où n’importe qui pourrait mettre n’importe quoi en vente, sans aucune possibilité de restriction ou de censure. Il est basé sur les cryptomonnaies pour les paiements, et il existe une possibilité d’évaluer les vendeurs ainsi qu’un système de modérateurs pour arbitrer éventuellement les transactions qui pourraient mal se passer ou rencontrer un problème. AUCUN FRAIS sur les transactions, le système est 100 % gratuit (il y aurait un petit frais pour le modérateur devant intervenir si nécessaire).

Je veux dire, sur le papier, c’est fantastique, à mon avis. Pourtant, cela n’a jamais vraiment décollé. D’un autre côté, eBay ou Amazon, qui prélèvent des frais assez élevés sur chaque transaction, fonctionnent très bien.

Le point clé est que la présence de quelqu’un qui contrôle quelque chose, qui a un intérêt à ce que cela fonctionne parce qu’il en tire un profit financier, et qui investira dans cet objectif, rend généralement le projet plus efficace que des idées gratuites, ouvertes et nobles. Cela peut être très triste, mais en pratique, c’est ce qui semble se passer dans la vraie vie.

Est-ce que Mastodon a remplacé Facebook et Twitter ? Le fera-t-il un jour ? Les utilisateurs ne semblent pas être saturés par la quantité de publicités qu’ils consomment sur Facebook.

Quoi qu’il en soit, il me semble que vous n’avez pas pris en compte cet aspect dans votre vision de la fédération. Voici donc cette réflexion pour que vous puissiez peut-être l’envisager (ou du moins en prendre connaissance). Cela ne signifie pas que l’option de fédérer des choses ou de former des partenariats n’est pas une bonne idée. Mais opter pour une « fédération totale » pourrait aussi retirer l’attrait de faire tourner un logiciel, qui ne devient alors qu’un « nœud » et n’est plus quelque chose que vous contrôlez. C’est assez différent, du moins.

1 « J'aime »

L’évolution de l’usage d’une plateforme n’est pas linéaire. Prenons l’exemple de Signal : Snowden a déclaré « utilisez Silent ou Signal », et l’application a progressé. Elle est ainsi restée une niche. Un géant du GAFAM communique mal, et Elon Musk dit « utilisez Signal » ; des centaines de milliers d’utilisateurs arrivent alors, car ils ont évalué simultanément les mêmes critères et l’application de destination répond à leur besoin.

Certains utilisateurs ont peut-être quitté Twitter et Facebook récemment, sans grande couverture médiatique, parce que le principal fournisseur de réactions dans leur fil d’actualité a vu ses comptes supprimés.

Plus le système devient chaotique sur les réseaux sociaux, plus la probabilité que les utilisateurs adoptent simultanément un mouvement massif de « désinstaller l’application 1, installer l’application 2 » est élevée.

1 « J'aime »

Je ne suis pas sûr que l’exemple de Signal soit vraiment comparable. Ici, il y a une fonctionnalité ajoutée claire, et une RAISON pour laquelle les gens devraient l’utiliser : « Utilisez une communication chiffrée afin que ce que vous dites reste privé et que personne ne puisse l’écouter ». Il s’agirait de passer d’un système non chiffré à un système chiffré.

Mais lorsqu’on passe d’une plateforme « fermée » et « isolée » à une plateforme « ouverte », si l’on pense à une « fédération complète », cela apporte-t-il vraiment quelque chose aux utilisateurs ? Apporte-t-il vraiment une fonctionnalité pour eux ? Certains diront oui, car ils voient comment ils participent à plusieurs communautés, et cela pourrait les agréger (je comprends combien il est fastidieux de se connecter à xx communautés différentes). Mais en même temps, si tous les utilisateurs migraient vers une seule communauté « fermée » devenant dominante, ce serait à peu près la même chose pour eux. Je ne suis pas sûr qu’ils verraient la différence, ou qu’ils voudraient cette « ouverture ».

Les gens se soucient du contenu, des interactions, etc., mais cela leur importe-t-il comment cela fonctionne techniquement et qui le contrôle ? Le passage à la « fédération » est en quelque sorte un passage de la CONCURRENCE au PARTAGE pour les communautés. Elles peuvent être amies entre elles et accepter d’envoyer des utilisateurs de l’une à l’autre, mais elles sont encore en concurrence lorsqu’elles sont fermées.

Votre deuxième point est intéressant : Est-ce que certaines « fédérations » pourraient empêcher les bannissements, les suppressions de comptes et la censure ? CELA pourrait être une fonctionnalité ajoutée pour les gens. Actuellement avec ActivityPub, je suppose que vous pouvez être banni de sites individuels, mais vous pouvez continuer à publier dans le reste de la fédération… tant que le site où vous vous êtes inscrit ne vous bannit pas ? @aschrijver, savez-vous comment cela fonctionne ? (Je ne connais pas assez bien ActivityPub). Êtes-vous inscrit au niveau de la fédération, ou êtes-vous inscrit sur l’un des sites appartenant à la fédération ? Peut-on être banni au niveau de la fédération ? Ou est-ce impossible ? (supposé être impossible ?)

@jibe-b La question ne portait pas vraiment sur le passage d’une application 1 à une application 2, mais sur des applications fermées individuelles comparées à quelque chose de fédéré (quelque chose d’ouvert). Il peut aussi y avoir des applications individuelles fermées avec de fortes politiques de liberté d’expression et qui ne bannissent pas les gens (c’est très facile à dire avec le recul, mais le « fournisseur de réactions » aurait pu le prévoir). Vous pouvez garantir un environnement sans bannissement en décentralisant totalement et en retirant à quiconque la capacité de bannir. Je ne pense pas que prévenir la censure était l’objectif initial de @aschrijver, cependant.

1 « J'aime »

(J’ai cité des extraits pour plus de concision). L’analogie du restaurant s’effondre ici. C’est comme si vous étiez assis à deux tables en même temps, dans un restaurant « agrégé » plus grand, avec plus de gens pour célébrer ensemble. Ce que vous dites peut être vrai, mais dépend entièrement de la manière dont les choses sont mises en œuvre.

Alors que le sujet RFC sur ActivityPub et le cas d’usage de @hellekin placent les individus en plein contrôle, dans ma description ci-dessus, je laisse la structure de la communauté entièrement entre les mains du personnel de la communauté. Ils établissent des partenariats avec d’autres communautés et ne sont peut-être capables de partager que des sections transversales de leur communauté sur la base d’un consentement mutuel.

Je pensais que cela serait plus dans l’intérêt de Discourse (l’entreprise) ainsi que des gestionnaires de communauté qui investissent tant d’efforts pour construire leur identité et leur base de membres. Autrement dit, ce serait davantage un cas d’affaires. Ainsi, le personnel resterait en plein contrôle et s’assurerait également que l’organisation communautaire constituante reste complète et intuitive. Ils sont les « éditeurs du tissu communautaire ».

Si vous accordiez une liberté totale aux utilisateurs de Discourse pour remplir leur « portail » vide avec du contenu de forum provenant de partout, vous obtiendriez une dynamique communautaire totalement différente. Le cas d’usage a de la valeur, pour des cas spécifiques, mais il est complètement différent du cas d’usage où « le personnel garde le contrôle ». Bien sûr, toutes les nuances de gris entre les deux sont également possibles.

Oui, je les connais et j’adore l’idée d’OpenBazaar en tant que marché décentralisé, mais ce sont les cryptomonnaies qui m’ont empêché de m’y intéresser. C’est un problème de confiance. Pour beaucoup de gens, cela a peut-être aussi freiné leur démarche. Mais à part cela, ce sont les effets de réseau énormes des géants de la technologie établis qui rendent très difficile l’entrée de nouveaux venus, où ils lancent un nouveau service, le font connaître sur des sites avec des millions de visiteurs quotidiens et sont capables de fonctionner avec de grosses pertes jusqu’à ce que le projet finisse par décoller.

Oui, je suis d’accord avec cela. C’est pourquoi je ne me suis pas concentré sur la « pleine liberté », mais plutôt sur le cas d’usage « personnel en contrôle », tel que décrit ci-dessus. Là où le support d’ActivityPub ajoute une proposition de vente unique (USP) à Discourse en tant que produit pour les gestionnaires de communauté, les clients payants. Eh bien… s’ils choisissent un abonnement hébergé dans le cloud, bien sûr.

À cet égard, Discourse (l’entreprise) pourrait rendre les abonnements plus intéressants en fournissant des services à valeur ajoutée, comme un service de découverte et de mise en relation où les gestionnaires de communautés de différentes communautés recherchent activement des partenariats et des coopérations pour enrichir leurs communautés (et implicitement celles des autres). Le service pourrait être accessible à tous, ou uniquement aux clients d’un plan payant.

Devraient-ils le vouloir ? Pourquoi cela devrait-il être l’objectif ? ActivityPub en tant que protocole permet à de nombreuses applications différentes dans de nombreux domaines différents d’interopérer à n’importe quel niveau. Chaque projet / application / produit poursuivra ses propres objectifs et, pour les logiciels commerciaux, ses propres USP.

La première partie est importante. Choisissez votre fédération avec sagesse. La fédération totale ne devrait jamais être l’objectif si vous perdez toute votre identité en tant que produit en le faisant.

Tout d’abord, il y a une différence entre la « fédération » et « le fediverse ». Si vous construisez une fédération en utilisant ActivityPub, vous pouvez la faire fonctionner de la manière que vous souhaitez. Si vous construisez avec l’objectif de vous intégrer au Fediverse, alors il existe certaines normes de facto établies sur la façon dont les choses fonctionnent. Un bannissement à l’échelle du fediverse au niveau de l’utilisateur n’est pas possible, et les bannissements sur des instances spécifiques sont basés sur les décisions des modérateurs de chaque autre instance, et configurés dans des listes de blocage et d’autorisation. Ces listes sont souvent partagées (comme les listes de blocage de publicités) et peuvent entraîner le blocage complet de certaines instances à travers le fediverse (« ils sont repoussés aux marges du fediverse »).

Une bonne vidéo qui explique le concept est :

Comme les forums, chaque instance fédérée dans le Fediverse est modérée. Et je pense que c’est une bonne chose. Il y a toujours une liberté totale, car vous pouvez lancer votre propre instance de forum / serveur sans modération où tout est permis. Les autres ont la liberté de vous bloquer en raison de cela.

4 « J'aime »

Délégation de la gestion communautaire

Comme il s’agit d’un brainstorming spontané et que je viens de voir ce sujet Appel à des gestionnaires de communauté bénévoles :mega:   … j’ai pensé :

Et si la gestion communautaire était fédérée ?

Vous êtes un nouveau gestionnaire de communauté sur un forum Discourse fraîchement installé, un véritable débutant sur l’interface d’administration et les pratiques de construction communautaire. Et si vous pouviez faire appel à l’aide d’un gestionnaire de communauté expérimenté pendant une certaine période pour vous conseiller et vous accompagner ?

Je sais que vous allez dire : « Pourquoi ne pas simplement créer un compte staff sur ce forum… aucune fédération n’est nécessaire ! » et vous auriez raison. Mais retournons la situation et rendons cela plus intéressant : Et si je voulais offrir mes compétences en matière de Discourse et de gestion communautaire, soit bénévolement, soit en tant que professionnel (c’est-à-dire rémunéré) ?

Je voudrais pouvoir gérer de manière productive autant de communautés que possible dans mon « portefeuille clients ». Cela conduit à un triple gain :

  • Les nouveaux gestionnaires de communauté peuvent bénéficier d’un service d’intégration pour démarrer plus rapidement.
  • Les gestionnaires de communauté peuvent bénéficier plus largement de leurs compétences, au-delà de leur propre communauté.
  • Les deux points précédents signifient que Discourse ajoute une nouvelle USP (proposition de vente unique) à son produit.

À quoi cela ressemblerait-il alors ? Je ne sais pas… de nombreuses possibilités. Voici quelques suggestions, où dans chacun des cas, l’administrateur délégué travaille depuis son propre portail communautaire via la fédération, gérant potentiellement de nombreuses communautés :

  • L’administrateur délégué peut modifier les paramètres du forum, installer des plugins/composants/CSS, que le véritable administrateur approuve avant qu’ils ne prennent effet.
  • L’administrateur délégué a accès aux catégories et groupes réservés au staff et participe aux discussions pour donner ses conseils.
  • L’administrateur délégué gère les signalements soulevés sur le forum, où seul le sujet contenant le signalement est fédéré vers son portail.
  • L’administrateur délégué, connaissant le paysage communautaire, aide à organiser des partenariats avec d’autres communautés et le partage de contenu.

Considérez ce qui suit à partir de ce qui précède :

Cela peut également être un service à valeur ajoutée et peut être combiné avec ce qui précède. Toutes les parties impliquées ont intérêt à ce que les administrateurs délégués soient évalués comme de bons gestionnaires de communauté dans une certaine mesure. Discourse (l’entreprise) pourrait n’autoriser les personnes à devenir administrateurs délégués que si elles ont un abonnement (payant ?). Discourse ou un partenaire pourrait proposer un cours de gestion communautaire qui, une fois réussi, récompense par un certificat avec le cachet d’approbation de @codinghorror.

Bon… que l’idée vous plaise ou non. Ce fut une bonne session de brainstorming pour moi, ha ha :grinning_face_with_smiling_eyes:
Peut-être pouvez-vous l’améliorer ?


Édition :

Discourse lui-même utiliserait également ce service. Au début de notre abonnement payant, un membre de l’équipe Discourse faisait partie du staff de notre forum pour offrir le même type d’aide. Grâce à cela, ils peuvent le faire depuis leur propre « cockpit » distant, ou… le déléguer.

Une autre chose qui concerne le partage de parties d’une communauté… À plusieurs reprises, lorsque j’ai publié un sujet sur Meta demandant une aide spécifique, le sujet a été rendu privé (parfois parce qu’il contenait des informations sensibles) et traité comme un « ticket de support » par l’équipe Discourse. Avec la fédération, j’aurais peut-être la partie Support de Meta intégrée dans mon propre forum.

4 « J'aime »

(Mise en forme de mon côté). J’apprécie vraiment cette définition, @JE-FF, qui correspond parfaitement à l’approche innovante à adopter avec les concepts de « la communauté n’a pas de frontières » et de « Discourse comme tissu ». Je doute toutefois, comme je l’ai également mentionné à @Mevo, que Discourse doive vraiment vouloir défier les géants technologiques des réseaux sociaux. Ils le pourraient s’ils le voulaient, mais ce n’est pas nécessaire. Discourse est déjà très réussi en soi, et ils sont désormais positionnés différemment, à savoir en tant que SaaS multi-locataire, un « nuage de forums communautaires indépendants ». Bien qu’en étendant les concepts communautaires au-delà des limites des locataires, ils pourraient être mieux positionnés face à leurs rivaux, tant dans l’espace des forums que dans celui des réseaux sociaux.

2 « J'aime »

Un grand merci, @aschrijver. C’est très clair, et honnêtement, je suis presque entièrement d’accord avec tout ce que vous avez dit. J’ai rédigé mes messages avec l’idée que ce que vous proposiez était une « étape intermédiaire », avec la « fédération complète (et totalement ouverte) » comme objectif ultime. Maintenant, je ne suis même plus sûr d’où vient cette idée, et il se peut que vous n’ayez jamais rien dit de tel. Cela pourrait être une interprétation erronée (et une idée inventée) de ma part, ou bien j’ai mélangé des propos tenus par d’autres personnes.

ActivityPub permettrait tout cela, tout en vous laissant le choix de la manière dont vous souhaitez procéder. Oui, tout cela me semble formidable. Je pense que vous avez raison : il peut y avoir une confusion entre ActivityPub et le Fediverse (vous l’avez déjà expliqué dans un autre sujet sur ActivityPub).

Personnellement, j’adore toutes les idées que vous avez soulevées. En ce qui concerne la « gestion communautaire » fédérée, il serait également très utile d’avoir accès à des modérateurs de cette manière. Des modérateurs que vous pourriez engager temporairement lorsque votre communauté s’agite, ou lorsqu’un événement spécial nécessite plus de modérateurs (tout cela était peut-être inclus dans la « gestion communautaire » dans votre esprit. Vous avez parlé de signalements. Mais vous pourriez tout aussi bien avoir accès à plus de personnes de type « administrateur », ou « gestionnaires de communauté », si vous considérez ces tâches comme différentes).

Comme mentionné précédemment, tout cela peut être réalisé « à part » via des plugins et/ou un site secondaire (il pourrait exister un site secondaire de type « freelance » listant et proposant des services avec des personnes intervenant directement dans la communauté. Ce n’est pas aussi élégant que d’avoir leur propre plateforme depuis laquelle ils peuvent tout gérer à distance et de manière agrégée grâce à ActivityPub, mais ce serait déjà un bon départ).

Tout dépend de savoir si l’équipe de Discourse souhaite ou non intégrer certaines de ces idées directement dans Discourse.

4 « J'aime »

Je ne suis pas d’accord ici. J’utilise des configurations multi-sites pour faciliter la propriété de groupe d’une instance Discourse, où un petit groupe peut devenir son propre personnel tout en conservant un lien direct avec la communauté plus large. À mon avis, jouer avec les frontières communautaires responsabilise la communauté en appliquant le principe de subsidiarité : les décisions sont prises aussi près que possible de la pratique.

D’abord, vous semblez interpréter ses propos comme signifiant que « les utilisateurs vont mal se comporter sans un certain « contrôle du personnel » », ce qui, selon moi, n’est pas ce qu’il a dit. Ensuite, il n’a parlé que d’une « dynamique communautaire totalement différente », sans porter de jugement sur le fait que cela soit bon ou mauvais. Vous semblez en fait être d’accord avec lui en disant que c’est une bonne chose (cela reste « différent »).

Mais ce n’était pas le sujet de la discussion. Il ne s’agissait pas de ce « contrôle », ni d’avoir un problème avec les utilisateurs.

Oui, il s’agissait surtout de montrer l’étendue des options disponibles et la pleine flexibilité pour s’adapter à des scénarios particuliers. Si je me concentre uniquement sur le protocole ActivityPub, il permet à l’implémenteur des fonctionnalités de fédération un contrôle total sur le processus. Les cas d’usage mis en œuvre sont tous également valables (à condition qu’ils aient été conçus délibérément dans le cadre du développement du produit).

Je constate que le cas de @hellekin ne se situe effectivement pas à l’extrémité de la pleine liberté, et il serait intéressant d’approfondir le sujet. @hellekin gère plus de forums que moi, et de manière créative, comme on peut le voir sur le forum SocialHub, où les équipes logicielles individuelles d’ActivityPub ont le contrôle de leurs propres sections du forum. Ces équipes disposent souvent d’un autre forum indépendant (par exemple, dans le cas de Mastodon). Il faut les encourager à effectuer ce « double travail » pour maintenir la communauté AP informée des extensions de fédération personnalisées qu’elles intègrent dans leurs propres logiciels. Par ailleurs, SocialHub possède ce que l’on peut considérer comme des forums satellites.

3 « J'aime »

Je viens de décider de m’inscrire à un nouveau forum Discourse, simplement pour les aider et fournir (par copier-coller) quelques liens utiles vers des sujets sur d’autres forums. Encore un compte utilisateur Discourse de plus à gérer.

Le forum est Fedeproxy, un nouveau projet ActivityPub visant à synchroniser les forge de code (dépôts GitHub, GitLab, Gitea, etc.) entre eux. Il pourrait devenir une implémentation du protocole Forgefed et mérite d’être mentionné ici pour deux raisons :

  1. C’est un autre exemple d’un domaine d’activité complètement différent qui peut grandement bénéficier de la fédération ActivityPub.
  2. Si Discourse prenait en charge la fédération, la catégorie #development de ce forum pourrait être synchronisée en deux sens avec la sous-catégorie #software de SocialHub, sans avoir à travailler sur deux forums et à dupliquer les discussions.

Mise à jour :

Sur le forum Fedeproxy, un utilisateur (qui, soit dit en passant, ne voulait pas s’inscrire ici, juste pour poster un seul message) m’a signalé une ontologie Linked Data intéressante pour les communautés : la Spécification de l’ontologie de base SIOC, où le projet SIOC signifie “Semantically-Interlinked Online Communities” (Communautés en ligne sémantiquement interconnectées). L’ontologie définit les sémantiques suivantes dans les données liées :


Je le mentionne ici car cela met en lumière la réflexion autour des domaines métier et des vocabulaires, et peut servir d’inspiration pour le brainstorming :slight_smile:

(PS. Ne vous laissez pas égarer par le terme « Web sémantique » dans les spécifications SIOC. Ce n’est pas de cela qu’il s’agit — trop complexe — mais plutôt de rechercher des vocabulaires Linked Data fermés pour définir un domaine particulier.)

Mise à jour 2 :

J’ai découvert aujourd’hui un excellent projet, également dans un domaine similaire à Discourse, et j’ai lancé une discussion intitulée « La communauté n’a pas de frontières » là-bas :

PubPub fait partie du Knowledge Futures Group, qui travaille également sur le projet de graphe de connaissances distribué ouvert Underlay (qui se rapproche de une idée que j’ai pour l’agrégation de connaissances à partir de forums Discourse).

Mise à jour 3 :

J’ai réalisé que la discussion sur la communauté est bien plus large que Discourse seul, car les concepts de communauté sont universels dans notre société. Pour le Fediverse, j’ai lancé une discussion sur la normalisation d’un domaine communautaire et sur la modélisation d’une extension ActivityPub basée sur celui-ci :

7 « J'aime »

ActivityPub est une bonne idée, mais même les logiciels tout neufs qui l’implémentent en tant que citoyens de première classe doivent combler plusieurs lacunes dans les spécifications. Nous avons donc intérêt à attendre et observer.

Par ailleurs, cela est tout à fait réalisable sous forme de plugin si un groupe particulier y est très passionné.

13 « J'aime »

Ce serait génial de voir une telle intégration soumise via une pull request dans l’application chat-integration, afin que nous puissions simplement publier en croix par balise, catégorie ou mention après avoir ajouté nos identifiants. Salutations !

7 « J'aime »

Merci @codinghorror. En effet, la spécification ActivityPub présente certaines lacunes. Cependant, elles sont plus ou moins intentionnelles, car les auteurs de la spécification ne souhaitaient pas créer une norme technologique gigantesque et complexe couvrant tout, et à l’époque de la rédaction, ils ne savaient pas encore comment la spécification évoluerait. Ils ont donc attendu des implémentations de référence (ce qui présentait aussi certains inconvénients, comme par exemple le fait que Mastodon utilise une API client personnalisée au lieu de la partie Client-to-Server de la spécification, bien que Mastodon ait également défini de véritables extensions d’espace de noms pratiques à utiliser).

Actuellement, la plupart de ces lacunes ont été comblées par d’autres normes ouvertes (bien qu’il en reste encore quelques-unes à combler). Il existe HTTP Signatures pour la fédération Server-to-Server (ou, moins utilisé, des signatures JSON-LD), et pour les mentions d’utilisateurs fédérées, Webfinger est employé. Le flux Client-to-Server utilise OAuth2 Client Credentials, et il existe des spécifications de facto, NodeInfo et NodeInfo2, pour communiquer les capacités du serveur.

Je suis d’accord pour dire qu’un grand nombre de points discutés dans ce fil (la majorité probablement) peuvent être mis en œuvre grâce aux plugins et à l’excellente API de Discourse. Comme le dit @sunjam, ce serait en effet génial que quelqu’un s’y lance :slight_smile:


Suite à cette séance de brainstorming, j’ai initié plusieurs discussions plus générales sur le forum SocialHub, auxquelles je souhaite vous référer :

Mise à jour 2021/03/07 : Sur SocialHub, dans le sujet consacré à la création d’une extension AP de vocabulaire communautaire, j’ai un peu plus détaillé la façon dont Discourse s’intégrerait dans un modèle communautaire. Consultez mon message :

7 « J'aime »