D'après Pete Warden, responsable de TensorFlow Mobile chez Google, construire une communauté autour d'un projet open source nécessite un certain nombre de pratiques en matière de support, de gestion des pull requests, de gestion de la licence, etc.
Warden explique qu'un grand défi au début d'un nouveau projet est de fournir du support à ceux qui l'utilisent. Au départ, les seuls experts disponibles sont les développeurs eux-mêmes, qui doivent trouver un moyen d'intégrer dans leurs tâches quotidiennes d'autres tâches de support. Ce n'est pas simple, car cela peut emmener les développeurs en dehors de leur zone de confort et potentiellement les distraire de leurs tâches principales. L'équipe TensorFlow s'est occupée de ce défi en établissant un piquet parmi tous les ingénieurs, de sorte que chacun a assumé la responsabilité d'un périmètre spécifique pendant une semaine entière approximativement tous les deux mois.
Les principales pratiques, parmi celles qui ont le plus aidé à répondre aux demandes de la communauté, étaient les suivantes :
- Revoir les pull requests, qui sont généralement affectées au développeur de piquet, qui valide la PR et s'assure que les tests n'échouent pas, puis la transmet si nécessaire à un autre développeur avec plus de connaissances sur ce périmètre.
- Trier les problèmes soumis : pour un projet comme TensorFlow, qui a eu une large adoption, des milliers de problèmes peuvent être signalés. Cela nécessitait de définir une procédure détaillée pour gérer les priorités et garder une trace de ce qui était réalisé.
- Répondre aux questions StackOverflow, que l'équipe TensorFlow a choisi comme canal pour fournir de l'aide sur l'utilisation de la bibliothèque. Cela a pour avantage que quiconque sachant comment répondre à une question peut le faire, même s'il ne fait pas partie de l'équipe.
- S'assurer que les tests n'échouent pas : cela est géré en utilisant Jenkins pour exécuter une suite de tests automatisés exécutés sur la plupart des plateformes prises en charge.
- La gestion des relations avec les développeurs, qui est également effectuée à temps partiel et qui permet aux développeurs de connaître directement les problèmes rencontrés par leurs utilisateurs.
L'objectif à long terme de cet effort, explique Warden, est d'élargir le nombre de personnes à l'intérieur et à l'extérieur de Google qui ont l'expertise requise pour aider la communauté, améliorer la documentation et créer des "livres de recettes" qui aident à faire face à des tâches classiques comme le tri des bogues.
Assurez-vous de lire l'article original, car il contient beaucoup plus de détails intéressants.