Comment contribuer à des projets open source
Sam Hepburn
17 octobre 2022
0 minutes de lectureEn tant que développeur, vous vous appuyez probablement chaque jour sur l’open source. Le code open source est extrêmement utile pour créer et améliorer des produits, qu’ils soient personnels ou professionnels. Mais avez-vous envisagé d’aller plus loin en contribuant vous aussi à des projets open source ? Cette démarche peut vous permettre d’améliorer vos compétences et d’avoir un impact positif sur l’ensemble de la communauté du développement logiciel.
Pourtant, il peut sembler difficile de se lancer. Par où commencer ? Comment trouver votre place dans les communautés et les forums qui entourent les projets open source ? Comment surmonter la peur de l’échec ? Ces obstacles peuvent sembler importants, mais vous pouvez les dépasser en comprenant le fonctionnement de l’open source.
Pourquoi contribuer à l’open source ?
Par définition, l’open source désigne du code source accessible au public, qui peut être consulté, modifié et distribué sous réserve de certaines conditions de licence. La nature ouverte de ce code a naturellement donné naissance à une communauté de développeurs qui créent de nouveaux projets et améliorent ceux qui existent déjà, au bénéfice de toute la communauté du développement..
Ce qui n’était au départ que du code source librement accessible est devenu un espace d’échange, d’innovation et de contribution. Voyons les principales raisons qui pourraient vous inciter à contribuer à des projets open source, plutôt que de simplement les utiliser.
Contribuer aux logiciels sur lesquels vous comptez
Vous avez quelques composants open source de prédilection ? Comme vous les connaissez très bien, vous êtes plus susceptible d’y repérer des bogues et des erreurs. De nombreux développeurs choisissent de contribuer aux projets qu’ils utilisent fréquemment, tout simplement parce qu’ils les connaissent bien et souhaitent corriger les problèmes qu’ils y trouvent.
Rejoindre une communauté plus vaste
En contribuant à un projet, vous rejoignez une communauté plus vaste d’utilisateurs et de contributeurs. Ces échanges vous permettent de transmettre vos connaissances, de rencontrer des personnes qui partagent vos centres d’intérêt et d’apprendre auprès de développeurs plus expérimentés. Ces contacts peuvent aussi vous ouvrir d’excellentes perspectives d’emploi et d’évolution professionnelle.
Améliorer vos compétences et prendre confiance en vous
Si vous souhaitez renforcer vos compétences dans un domaine particulier, contribuer à l’open source est un excellent point de départ. Choisissez des projets en fonction des compétences que vous souhaitez développer et appuyez-vous sur la communauté pour progresser. Le processus d’apprentissage et de collaboration vous aidera également à mieux rédiger de la documentation et à expliquer votre travail, pour devenir un meilleur membre d’équipe.
Autre avantage : vous pourriez gagner en confiance. Contribuer, même modestement, à un projet dont les améliorations profiteront à ses prochains utilisateurs est une expérience valorisante.
Des projets open source pour débuter
Lorsque vous débutez dans le développement open source, vous pouvez être confronté au syndrome de l’imposteur ou à la peur de gâcher le projet de quelqu’un d’autre (une crainte légitime). Voici quelques conseils pour surmonter ces difficultés.
Choisissez vos projets avec soin
Lorsque vous débutez, évitez de choisir un projet trop complexe ou difficile. Commencez par quelque chose de simple, puis augmentez progressivement la difficulté.
Pour cela, vous pouvez choisir un projet qui s’inscrit dans un écosystème que vous connaissez. Cherchez un projet qui repose sur des technologies que vous maîtrisez et qui est bien maintenu. Un fichier readme clair, des problèmes résolus dans le dépôt et des mises à jour régulières du code sont autant de signes d’une bonne maintenance.
Pour tirer le meilleur parti de cette expérience, trouvez un projet open source auquel vous pourrez apporter plusieurs contributions et avec l’équipe duquel vous pourrez bâtir une relation durable.
Respectez les règles
L’open source repose avant tout sur la collaboration. Des règles permettent d’éviter qu’un développeur ne sabote un projet. Elles varient d’un projet à l’autre et peuvent notamment préciser le niveau de détail attendu dans la documentation des modifications ou les étapes à suivre pour soumettre des changements sur une plateforme ou un forum donné (par exemple, GitHub).
Bien sûr, les règles tacites généralement connues de la communauté ne sont pas écrites. Voici quelques-unes de celles qu’il est utile de connaître dès le départ :
Lorsque vous commencez à travailler sur un projet, prenez le temps de bien comprendre où vous pouvez contribuer et quelles sont les limites.
Demandez avant de vous saisir d’un problème.
Une fois que vous avez décidé d’apporter une modification, restez disponible pour répondre rapidement aux demandes de suivi.
Soyez prêt à accepter les revues, les commentaires et même les objections de l’équipe principale qui gère le projet concernant vos pull requests (PR).
Surtout, apprenez de vos erreurs. Beaucoup de développeurs hésitent à apporter des modifications, simplement parce qu’ils ont peur d’échouer et d’être critiqués. Pourtant, apprendre de ses erreurs est l’un des principaux avantages de la contribution au code open source. C’est l’occasion de vous exercer, de développer vos compétences et d’apprendre continuellement à demander de l’aide.
Types de contributions
Les développeurs peuvent contribuer à un projet open source de plusieurs façons, et toutes ne consistent pas à modifier le code lui-même. Lorsque vous parcourez les bibliothèques de projets pour trouver celle qui correspond à vos compétences et à vos objectifs de progression, pensez également aux types de contributions suivants, utiles à l’ensemble de la communauté.
Donner votre avis en tant qu’utilisateur
Si vous utilisez fréquemment un projet, faites part de votre avis en toute franchise. Les communautés open source s’organisent généralement autour d’un forum ou d’un serveur. Consultez les discussions Reddit du projet, son canal Discord, ses discussions GitHub, etc. Vous pourrez ainsi participer aux échanges et partager des retours utiles à l’équipe principale et aux autres contributeurs pour améliorer le projet.
Écrire du code
Comme nous l’avons vu tout au long de cet article, l’une des façons les plus importantes et les plus directes de contribuer à un projet consiste à corriger ou à créer du code pour en améliorer le fonctionnement. Commencez par examiner les problèmes signalés ou mis en avant par la communauté. Veillez à respecter les consignes définies par les responsables du projet.
Signaler les bogues à l’équipe principale du projet
Un autre moyen simple, mais efficace, d’aider la communauté consiste à signaler directement à l’équipe principale du projet les bogues que vous repérez. Elle pourra ainsi intervenir et apporter des modifications qui amélioreront le logiciel pour tout le monde.
Proposer des modifications à la documentation
Maintenir la documentation open source à jour est une tâche ardue. Il faut la réviser régulièrement et avec constance, en prêtant attention aux nouvelles informations, aux erreurs et aux fautes de frappe. La tâche est encore plus difficile dans la communauté open source, où chacun contribue bénévolement.
La mise à jour de la documentation est pourtant essentielle, car elle peut porter sur des informations qui influent sur le fonctionnement et la sécurité du code. L’équipe principale d’un projet open source, tout comme ses utilisateurs, apprécie les corrections et les mises à jour apportées par les membres de la communauté. Elles permettent de garantir une utilisation libre et sûre des projets.
Aider les nouveaux utilisateurs
Si vous participez à un forum ou à un serveur dédié à un projet et que vous connaissez bien son code, prenez le temps de répondre aux questions et aux préoccupations des nouveaux utilisateurs. Vous pouvez leur communiquer des informations utiles, comme des solutions de contournement pour certains problèmes, ou leur donner votre avis sur des sujets importants tels que le DevOps, le SecOps et la sécurité dès la conception.
Créer votre propre contenu sur le projet
Si vous animez une chaîne YouTube, un blog ou un autre compte sur les réseaux sociaux, vous pouvez contribuer positivement à la communauté open source en créant des contenus écrits ou vidéo expliquant comment utiliser le projet.
Lancez-vous dès aujourd’hui
Contribuer à un projet open source ne demande ni compétences exceptionnelles ni années d’expérience. Vous pouvez commencer là où vous en êtes, avec votre parcours, vos compétences et votre niveau d’expérience actuels.
Rejoindre une communauté open source vous donne l’occasion de progresser et de développer votre expérience, tout en participant à une réflexion internationale sur la création du meilleur code possible — et, au bout du compte, à l’amélioration des technologies pour tout le monde.
Chez Snyk, nous sommes fiers de participer à cette réflexion permanente grâce à nos outils qui améliorent la sécurité et la qualité des composants open source.
Foire aux questions (FAQ)
Comment contribuer à des projets open source sur GitHub ?
GitHub est l’un des endroits les plus courants pour trouver des composants open source. Pour contribuer à des projets sur cette plateforme, vous devez copier dans GitHub la partie du projet que vous souhaitez modifier — une opération appelée « fork » —, la cloner sur votre ordinateur, apporter vos modifications et les envoyer, puis créer une pull request pour que le propriétaire du projet puisse examiner votre travail.
Où trouver des projets open source ?
Le code open source est librement accessible sur Internet : vous pouvez l’utiliser et y contribuer. Parmi les plateformes à consulter, citons GitHub, Gitlab et SourceForge. Certains sites, comme Up For Grabs, Ovio et First Contributions, proposent également une sélection de projets adaptée aux débutants.
Cap sur la capture du drapeau
Découvrez comment résoudre les défis de capture du drapeau en regardant notre atelier virtuel à la demande.
