02/12/2017
Qu'est-ce qui fait une bonne communauté ?

Cet article est une traduction de l’article de Sage Sharp : what makes a good community; originellement posté le 6 octobre 2015.

Il y a eu beaucoup de discussion dans ma section commentaire (et sur LWN) à propos de ce qui fait une bonne communauté, avec des suggestions de communauté open source accueillantes à regarder. Vous êtes plein de bonne volonté, mais je n’ai jamais trouvé une communauté open source qui ne nécessite pas d’amélioration. Je suis heureuse de donner à la communauté Xorg une chance, surtout parce que je pense qu’ils sont en bonne position pour faire un changement culturel.

Une chose est sûre, réussir à construire une communauté diversifiée se fait pas à pas. Il n’y a pas de raccourcis. Chaque pas doit être terminé avant que le prochain niveau de changement culturel ne puisse prendre effet. Il est à noter également que chaque pas fait dans cette direction bénéficiera à toute la communauté, pas uniquement à certains contributeurs.

Niveau 0 : Les bonnes manières fondamentales

Pour attirer des candidats diversifiés, vous devez être connu comme une communauté accueillante, avec un ensemble clair de normes sociales. Il ne suffit pas d’avoir un code de conduite. Vos meneurs doivent être moteur de ces normes, et elles doivent être appliquées.

Une communauté accueillante de niveau 0 présente les caractéristiques suivantes :

  • Le feedback technique direct et honnête est encouragé.
  • Les contributeurs sont encouragés à résoudre les conflits sociaux de façon saine.
  • Les interactions quotidiennes de la communauté sont en général au niveau DISCON 1 (tout est chouette), occasionnellement, chute au niveau DISCON 2 (Insulte impersonnelle) ou DISCON 3 (juron).
  • Les contributeurs qui atteignent souvent le niveau DISCON 4 (insulte personnelle) sont encouragés à changer d’attitude.
  • Les contributeurs qui atteignent le niveau DISCON 5 (menace) sont invités à arrêter leur participation.
  • Les harceleurs à répétition sont bannis des conférences et des canaux de communications.
  • Les nouveaux venus sont avertis à propos de chaque manquement et à propos des personnes qui donnent un feedback qui n’aide pas.
  • Le Code de conduite explique quels comportements sont encouragés et lesquels ne le sont pas.
  • Quand des micro-agressions sont révélées, la communauté s’arrête, écoute et s’excuse.
  • Toute la communauté, y compris les responsables, appliquent activement ces normes de communication.

Niveau 1 : Accueil et Intégration

La phase suivante pour améliorer la diversité est de savoir comment accueillir et intégrer les nouvelles personnes. Si les candidates et candidats issu·e·s de la diversité ne sont que 1 à 10% des nouveaux arrivants, mais sont 90% à ne pas réussir à faire leur première contribution, bien, vous ne pouvez pas espérer que beaucoup de nouvelles personnes issues de la diversité reste n’est-ce pas ? Il est également indispensable d’expliquer les us et coutumes, pour que les candidates et candidats issu·e·s de la diversités (qui sont susceptibles d’avoir peur de bouleverser le statu quo) sachent où ils vont arriver.

Les signes d’une communauté accueillante de niveau 1 :

  • La documentation d’où sont les endroits d’interaction de la communauté (irc, mailling list, bug tracker, etc).
  • Des rencontres dans la vraie vie, pour encourager la rencontre avec les nouveaux membres.
  • L’utilisation de la vidéo ou des échanges en personne pour mettre un visage sur un nom et encourager plus d’empathie et de camaraderie.
  • Documenter les premiers pas pour compiler, exécuter, tester et soigner les contributions.
  • Harnais de test en ligne facile et sans configuration particulière permetant de valider les nouvelles contributions.
  • Avoir un tutorial pas à pas, qui doit être à jour.
  • Règle de codage (ce qui est obligatoire, ce qui est facultatif, et à qui se référer quand il y a des désaccords).
  • Avoir un plan de livraison et les dates limites de soumission de fonctionnalités.
  • Comment contribuer sur autre chose que du code (signalement de bug, documentation, tutorials, test, organisation d’évènements, design).

Niveau 2 : Contributions significatives

Le niveau suivant traite de comment faire avec ces nouveaux candidats et candidates passionné·e·s. S’ils sont toujours là, malgré une culture tech toxique, c’est qu’ils sont probablement tenace, malin et à la recherche de nouveau challenge. Si vous n’avez rien de significatifs à leur proposer pour contribuer, ils iront surement vers le prochain sujets cool.

Les signes d’une communauté accueillante de niveau 2 :

  • Une liste des choses à faire pour les nouveaux arrivants.
  • Des grands projets autonomes.
  • Des mentor accueillants et disponibles.
  • Des programmes pour financer les débutants (stage, summer of code, etc).
  • Les contributeurs sont remerciés avec une profonde sincérité par une reconnaissance explicite sur ce qui était bien et ce qui pourrait être amélioré.
  • La communauté crée un canal pour les retours spontanés pour générer de nouvelles idées grâces aux nouveaux arrivant (irc, mailing list, slack, n’import quoi qui fonctionne).
  • Le code de conduite encourage les développeurs et développeuses à pré-supposer que les intentions sont accueillantes.

Niveau 3 : Planning de relève

L’étape suivante pour une communauté est de comprendre comment garder ces candidatures de personnes issue de la diversité. Comment promouvoir ces nouvelles voix diversifiées afin de s’assurer qu’elles influent sur votre communauté au niveau du leadership ? Si votre leadership est à l’ancienne, toujours occupé par le même genre de personnes, les gens partiront quand ils voudront prendre plus part aux décisions. Si votre communauté observe un départ de ces brillantes personnes issues de la diversité, vous devez vous concentrer sur la rétention.

Les signes d’une communauté accueillante de niveau 3 :

  • Les critiques sont appréciées et les questions des nouveaux arrivants sur les contributions peu claires sont encouragées.
  • Les leaders et/ou les mainteneurs changent selon un calendrier fixe.
  • Les vacances et les absences sont encouragées, cela permet aux remplaçants d’avoir une chance d’apprendre de nouvelles compétences.
  • Les membres de la communautés écrivent des tutoriels à propos de la revue de patchs, le système de release, et les aspects sociaux du développement logiciel.
  • Système de mentor pour les nouveaux conférenciers.
  • Un code de conduite évite les burnout et encourage le respect de ceux qui partent.

Niveau 4 : Empathie et reconnaissance

Une fois que vous avez réglé les problèmes de rétention et de burnout, il est temps de tacler le problème que la plupart des geeks évitent : les problèmes sociaux. Vos leaders vont avoir différentes opinions, comme chaque communauté en bonne santé devrait avoir ! Cependant, vous devez vous assurer que la voie la plus forte ne gagne pas à chaque fois en fatiguant les autres et que les voies minoritaires soient entendues.

Les signes d’une communauté accueillante de niveau 4 :

  • Valeur égale entre les développeurs, les rapporteurs de bugs, et les contributeurs qui ne codent pas.
  • Attention portée aux demandes non techniques, y compris les discussions en personne sur des sujets culturels ou politiques avec un intérêt affiché des leaders.
  • Amélioration constante de la documentation.
  • Les leaders montrent une capacité à reconnaitre leurs erreurs et à les prendre en comptes quand on les rappelle à l’ordre.
  • La gestion de communauté fait appliquer le code de conduite quand c’est approprié.
  • Le code de conduite met l’accent sur l’écoute des différents point de vue.

Niveau 5 : diversité

Une fois que tous ces changements culturels sont en place, vous pouvez activement chercher plus de personnes issu·e·s de la diversité et avoir un espoir de les voir rester.

Les signes d’une communauté accueillante de niveau 5 :

  • Les réunions de direction comprennent au moins 30% de nouvelles voix, et les voix familières laissent leur places régulièrement aux nouvelles voix par un système de rotation.
  • Les nouveaux leaders sont recherchés hors du réseau et des « visages habituels ».
  • La communauté participe aux programmes de promotion de la diversité.
  • La diversité n’est pas seulement une campagne de relations publiques - les développeurs cherchent vraiment des points de vue différents et essaient de comprendre leurs propres privilèges.
  • La représentation des genres n’est pas un sujet lors des conférences.
  • Les conférences comprennent des services de garde, des aliments étiquetés végétariens et non végétariens et la politique de l’événement est claire.
  • La politique sur les boissons alcoolisées encourage les participants à s’amuser plutôt qu’à se déchirer ?
  • Le code de conduite protège explicitement les développeuses et développeurs issues de la diversité, en reconnaissant le spectre du privilège.
  • Le comité chargé de l’application du code de conduite comprend des leaders de la communauté issus de la diversité.

Une chose qui me frustre le plus c’est quand les communautés sautent une étape. « Hé, nous avons un code de conduite et une garderie, mais des harceleurs connus sont autorisés à nos conférences ! », « Nous voulons participer au programme de diversité, mais nous n’avons pas de mentors et nous n’avons aucune idée de ce que les contributeurs pourraient faire à long terme ! ». Donc travaillez sur vos changements culturels de base d’abord, s’il vous plait.

Edit : S’il vous plait, arrêtez de me suggérer que BSD ou Canonical/Ubuntu sont de « meilleures » communautés.


Traducteur : Yannick François, Thomas Parisot, Clémentine Hahn, Étienne

Sage Sharp