Comment contribuer à un projet open source

Il n’a jamais été facile d’apprendre la programmation. Mais malgré des tonnes de façons d’apprendre à coder, nous pensons que la meilleure façon d’améliorer vos compétences est de contribuer à des projets open source.

La communauté open source offre une grande opportunité aux programmeurs en herbe de se distinguer ; et en contribuant à divers projets, les développeurs peuvent améliorer leurs compétences et obtenir de l’inspiration et du soutien de personnes partageant les mêmes idées. Mais surtout, ils peuvent prouver qu’ils peuvent construire des expériences fantastiques que les gens aiment.

Précédemment, nous avons discuté de ce que sont les projets open source et pourquoi l’open source est bon pour votre entreprise. Dans cet article, nous allons expliquer pourquoi vous devriez contribuer à de tels projets, comment contribuer et quels projets choisir. Cet article s’adresse aux développeurs qui débutent leur carrière et qui aimeraient s’impliquer dans la communauté (et peut-être devenir un génie du codage).

Pourquoi contribuer à des projets open source ?

Il existe un certain nombre de raisons de contribuer à des OSS (open-source software). Voyons ce qui motive les développeurs à contribuer.

Premièrement, il y a beaucoup de passionnés qui croient simplement que le code devrait être ouvert. Ce sont des idéalistes qui veulent rendre le monde meilleur, et cela les pousse à contribuer au code. Le désir de partager peut être une motivation puissante.

Deuxièmement, le logiciel libre vous donne un excellent départ. Les débutants peuvent commencer par corriger des choses mineures, comme un bogue dans une bibliothèque, envoyer une demande de pull, ou même écrire un morceau de documentation. Cependant, les développeurs débutants peuvent également apprendre à écrire ce que l’on appelle du « code propre », c’est-à-dire un code lisible et facile à maintenir, en contribuant à des projets open source. Lorsque les développeurs réalisent que leur code est exposé au monde entier, ils s’efforcent de le rendre facile à comprendre et à maintenir. Les programmeurs respectent les règles généralement acceptées au sein d’une équipe, notamment les normes relatives aux retraits, aux descriptions des méthodes et des classes, aux noms des variables et à la règle du « ne pas se répéter ». En un mot, lorsque vous contribuez à des projets libres, vous êtes obligé de vous conformer aux normes d’un projet.

Troisièmement, vous avez la chance de faire partie d’une communauté open source active où vous pouvez rencontrer des personnes partageant les mêmes idées et des supporters. De plus, si vous êtes un indépendant et que vous contribuez activement à des projets open source, vous augmentez vos chances d’être remarqué par des employeurs potentiels.

Les principales raisons pour lesquelles les développeurs se dirigent vers des projets de modification libre sont d’être reconnus, d’aiguiser leurs compétences en programmation et de faire partie de la communauté dynamique. Voyons maintenant ce que vous devez prendre en compte avant de commencer à contribuer.

Ce que vous devez prendre en compte avant de vous lancer dans l’open source

Ok, vous êtes donc impatient de commencer votre premier projet OSS. Passons en revue quelques conseils qui pourraient vous aider à choisir sur quoi travailler.

Langage de programmation

La technologie la plus fondamentale derrière toute application est un langage de programmation. Les langages les plus populaires sur GitHub (une plateforme d’hébergement de code collaboratif) sont JavaScript, Python, Java, Ruby et PHP. Il existe une multitude de projets qui pourraient convenir à vos compétences et à vos goûts.

Puisque nous, à RubyGarage, aimons Ruby et son écosystème, nous aimerions partager plusieurs bases de code OSS en direct pour les débutants :

  • Sinatra, une bibliothèque basée sur Ruby qui aide à créer des applications sans Rails;
  • Hanami, un framework web moderne construit avec Ruby;
  • Chef, un framework basé sur Ruby utilisé pour automatiser votre travail avec le serveur;
  • Goby, un framework qui vous permet de construire des jeux de rôle textuels;
  • JRuby, un interpréteur Ruby de second rang.

Bien que nous n’ayons mentionné que cinq projets open source actifs qui ont besoin d’aide, vous pouvez commencer votre jorney en tant que contributeur Ruby avec eux.

Type de projet

Après avoir choisi la langue dans laquelle vous voulez travailler, vous devez choisir le type de projet que vous préférez. Les projets GitHub sont classés dans des dossiers appelés Showcases. Voici quelques exemples de vitrines : « sécurité », « réalité virtuelle », « éditeurs de texte » et « préprocesseurs CSS ». Choisissez simplement un sujet qui vous intéresse.

Cependant, nous vous recommandons de prêter une attention particulière aux projets qui seraient utilisés par un large spectre de personnes afin que vous ayez la chance de tester votre code sur un large public dans le monde réel. Par exemple, la vitrine « Emoji » contient 25 dépôts qui représentent sa popularité. Un autre conseil sur la façon de choisir un projet OSS est de commencer à travailler sur un logiciel que vous utilisez déjà ou sur un logiciel que vous souhaitez utiliser. Cela vous permettra de rester motivé pour continuer à travailler.

Volume du projet

Les grands projets logiciels comme VLC Media Player ou Spree – avec des milliers de lignes de code – ne sont pas le meilleur choix pour un débutant. Lorsque vous contribuez à d’énormes projets, on attend de vous que vous répondiez aux exigences établies au sein de cette équipe. Voici un autre petit conseil : faites attention aux étiquettes des problèmes. Certaines questions sont étiquetées comme « first-timers-only », « beginner », « easy », etc. Vous pouvez également trouver une liste sur Github avec des collections de projets qui conviennent aux nouveaux arrivants.

Considérez ces conseils lorsque vous choisissez un projet auquel contribuer. Et n’oubliez jamais de choisir un logiciel qui vous intéresse et d’allouer du temps à l’avance.

Comment contribuer à des projets open source

Quand on parle de logiciels libres, on ne peut éviter de parler de GitHub et des outils associés. Voyons ce qu’est GitHub et comment il vous aide à participer à des projets open source.

Prendre connaissance de GitHub

GitHub est la plateforme la plus populaire pour la collaboration open source, vous l’utiliserez donc probablement lorsque vous explorerez le monde du logiciel libre. Tout d’abord, vous devez créer un compte GitHub et lire le guide qui vous aide à démarrer. Sur GitHub, vous pouvez contribuer aux projets en soumettant des problèmes et en contribuant au code. Soumettre des problèmes signifie envoyer des messages sur les erreurs dans les applications et suggérer des moyens de les corriger. Contribuer au code implique d’envoyer des demandes de pull avec vos corrections et améliorations.

Apprendre les bases

Lorsque vous travaillez avec GitHub, vous devez savoir comment utiliser Git – l’un des outils de contrôle de version les plus populaires (également connu sous le nom d’outils de contrôle de révision). Parce que les développeurs apportent constamment des modifications à leur code, ils ont besoin d’un système capable de gérer ces modifications dans un référentiel central. De cette façon, toutes les personnes impliquées dans le processus de développement peuvent télécharger un logiciel donné, apporter des modifications et soumettre des mises à jour.

En plus d’être à l’aise avec les outils de contrôle de révision, les compétences essentielles incluent la capacité de cloner un dépôt et d’envoyer des demandes d’extraction. Les demandes de retrait informent les mainteneurs de code des modifications apportées au code ; ils peuvent ensuite examiner ces modifications, lancer une discussion à leur sujet ou les affecter à un autre commit.

Rejoindre la communauté

Vous pouvez facilement rejoindre un projet open source en vous inscrivant à la liste de diffusion de ce projet. Vous pouvez trouver des listes de diffusion sur les sites web officiels ou sur les pages GitHub. Après avoir été accepté sur la liste, vous pouvez communiquer avec les membres de l’équipe et obtenir de l’aide si nécessaire. Grâce aux communautés dynamiques présentes dans presque tous les projets OSS, vous êtes susceptible d’obtenir des réponses rapides à vos questions.

Toutes les compétences sont les bienvenues

Même les non-programmeurs peuvent contribuer aux projets open source ! Une documentation est nécessaire pour tous les projets, et parfois celle-ci est mal écrite et maintenue. Ainsi, vous pouvez aider en écrivant, mettant à jour ou même traduisant la documentation. Vos compétences en matière de conception peuvent également s’avérer utiles : après tout, toute application a besoin d’une interface. Enfin, vous pouvez contribuer en gérant une communauté en répondant aux questions et en guidant les nouveaux arrivants.

Moyens de contribuer aux projets open source

Mettons en évidence les moyens les plus courants de contribuer aux projets OSS.

Créer votre propre projet open source

Tout projet devrait commencer par un besoin identifié. Si vous estimez que les projets existants sur GitHub ou Bitbucket n’offrent pas la fonctionnalité que vous souhaitez construire, alors créez votre propre solution open source. Outre une première ébauche de projet, vous devriez considérer l’ensemble des questions suivantes :

  1. Quelles sont les compétences dont vous avez besoin pour votre projet ?
  2. Combien de temps êtes-vous prêt à consacrer à votre projet ?
  3. Quel(s) problème(s) votre logiciel résout-il ?
  4. Combien d’utilisateurs potentiels y a-t-il pour votre produit ?

Créer des alternatives open source aux logiciels commerciaux

Les projets commerciaux d’aujourd’hui engagent activement des solutions open source. De nombreuses entreprises basent leurs projets sur des outils gratuits. Lorsqu’il existe un vaste choix de logiciels, il n’est pas nécessaire de réinventer la roue. C’est pourquoi il est utile de jouer avec un logiciel libre qui peut remplacer un logiciel propriétaire similaire, ou qui corrige un problème auquel vous avez été récemment confronté.

Une autre raison de remplacer les solutions commerciales par des logiciels libres est l’avidité d’innovation et de croissance réelles. Les logiciels commerciaux prétendent être innovants, mais leur objectif final est de faire des bénéfices. Les logiciels open source réunissent les meilleures pratiques, une grande qualité de code et des développeurs passionnés prêts à coder juste parce qu’ils aiment le faire.

Contribuer aux projets open source existants

Vous pouvez trouver de nombreux projets auxquels vous êtes libre de participer sur GitHub – une plateforme orientée vers les développeurs avec un ensemble de fonctionnalités simples mais essentielles. GitHub attire les développeurs avec des API publiques, une interface utilisateur élégante et fréquemment mise à jour, des gists (dépôts Git) qui vous permettent de partager des morceaux de code ou même des applications entières, et bien plus encore. Vous pouvez contribuer aux logiciels libres de plusieurs façons. Les développeurs peuvent bifurquer des projets, apporter des modifications au code et envoyer des demandes de téléchargement. Et l’assurance qualité est toujours appréciée. Parfois, les développeurs sont trop occupés ou trop paresseux pour vérifier la qualité de leur code. Alors allez-y et signalez un bogue ou essayez de le corriger – votre aide est appréciée.

Vous pouvez atteindre les projets GitHub les plus chauds en suivant le lien « Trending ». Et afin de rendre votre recherche plus pertinente, utilisez la recherche avancée : sélectionnez la langue dans laquelle vous souhaitez coder et choisissez le critère « best match ». Le critère « Best Match » classe les projets en fonction de leur pertinence, en tenant compte du nombre de forks (qui représente l’activité de mise à jour du projet) et d’étoiles (« likes », dans le langage de Facebook). La plupart des projets ont des problèmes connus (cependant, certains n’en ont pas) avec des étiquettes comme « bug », « discussion », « sécurité », ou « refactor », ou d’autres étiquettes selon le niveau de difficulté : « facile », « moyen », « difficile ». »

Conclusion

Les projets open source apportent de nombreux avantages à ceux qui y participent, et une telle expérience est excellente pour votre CV. En rejoignant une communauté de personnes partageant les mêmes idées et en perfectionnant vos compétences, vous pouvez vous donner un coup de pouce en tant que développeur en herbe. Nous avons énuméré les raisons courantes pour lesquelles les gens contribuent à des projets OSS et décrit les différentes façons de commencer. Si vous souhaitez en savoir plus sur la contribution aux projets OSS, consultez nos articles précédents sur la façon dont les projets open source pénètrent le marché informatique et sur la sécurité des logiciels libres.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée.