Hacktoberfest ? Mais ce n'est pas plutôt l'Oktoberfest, la célèbre fête de la bière que l'on célèbre en octobre ?
Si, mais à la place de la bière, nous préférons célébrer l'open source !
Qu'est ce que l'Hacktoberfest ?
L'Hacktoberfest comme son homonyme consacré à la bière, est un évenement annuel qui encourage l'ensemble de la communauté dev à contribuer à des projets open source.
Une grande partie des projets sur lesquels nous intervenons au quotidien chez nos clients, ou bien nos projets personels reposent sur des projets open source maintenus par des personnes passionnées qui souvent n'ont pas les moyens suffisant pour faire autre chose que maintenir le projet en vie.
L'Hacktoberfest vise à mettre ses projets en avant afin de les aider.
Comment y participer ?
Pour participer à l'Hacktoberfest rien de plus simple, il suffit de se rendre à l'adresse suivante https://hacktoberfest.com/participation/ et de s'inscrire entre le 26 septembre et le 31 octobre avec son Github ou Gitlab.
Une fois cela fait, dès que le compte à rebours arrive à zéro, vous pourrez commener à envoyer vos merge request.
Envoyer des merges request ? Mais comment on peut savoir sur quels projets contribuer ? Là encore, c'est très simple, il suffit d'aller sur Github ou Gitlab et trouver des projets qui ont le tag #Hacktoberfest.
Ensuite pour que vos merge request soit comptabilisées il faut que les personnes en charge des projets sur lesquels vous les avez faites les acceptent et qu'il n'y ai pas de retour arrière dessus pendant une période de temps donnée (7 jours).
Dès que vous avez 4 merge request acceptées entre le 1er octobre et le 31 octobre, vous aurez validé le challenge de contribution à l'open source qu'est l'Hacktoberfest.
Comment contribuer à un projet open source ?
Choisir un rôle
Au sein d'un projet open source, il existe divers rôles et responsabilités, chaque participant pouvant avoir une place spécifique en fonction de ses compétences, de son niveau d'implication et de ses intérêts. Voici quelques-uns des principaux rôles au sein d'un projet open source :
Mainteneur de Projet :
- Responsable de la gestion globale du projet.
- Prend des décisions importantes sur l'orientation, la stratégie et les grandes fonctionnalités du projet.
- Gère le code source, les versions, la coordination de la communauté et les problèmes critiques.
- Effectue des revues de code, fusionne les contributions et assure la qualité du code.
Contributeur :
- Soumet des contributions au projet, telles que des correctifs de bogues, des améliorations de fonctionnalités ou de la documentation.
- Suit les directives de contribution du projet, notamment les normes de codage.
- Participe aux discussions sur les problèmes et les demandes de fonctionnalités.
- Peut effectuer des revues de code pour les contributions des autres.
Testeur/QA (Assurance Qualité) :
- Teste le logiciel pour identifier et signaler les bugs.
- Fournit des rapports de bogues détaillés.
- Peut aider à créer des jeux de tests et à automatiser les tests.
Documentaliste :
- Rédige et met à jour la documentation du projet.
- Crée des guides d'utilisation, des tutoriels et des exemples.
- Veille à ce que la documentation soit précise et à jour.
Chaque position au sein d'un projet open source revêt une importance capitale, car elle apporte sa pierre à l'édifice de la réussite et à l'expansion du projet. Les projets open source sont généralement le fruit de la coopération d'individus aux compétences et intérêts variés. Les contributeurs peuvent endosser simultanément plusieurs de ces rôles, en fonction de leurs compétences et de leur disponibilité.
Choisir un projet
A l'heure oà j'écris ces lignes, il y'a actuellement 125,511 projets publics sur Github avec le #Hactoberfest ce qui represente la partie émergé de l'iceberg, autrement dit vous avez le choix dans la matière, il ne vous reste plus qu'à filtrer par langage pour trouver ce que vous voulez faire :
- travailler avec votre techno de prédilection
- vous formez sur une nouvelle techno
Une fois le projet choisit vous n'avez qu'à en lire la documentation (généralement le fichier README.md), le guide de contribution, et de regarder la liste des issues ouvertes (plus ou moins nombreuses et complexe en fonction du projet).
Et ensuite ? Ensuite c'est comme dans les projets sur lesquels vous intervenez au quotidien : du test, du debug, des essais concluant ou non, et dès que vous avez atteind le résultat voulu, vous transformez l'essai avec une merge / pull request.
Pourquoi contribuer à l'open source ?
- Respect de la philosophie open source : Si vous croyez en la philosophie de l'open source, qui promeut la transparence, la collaboration et le partage des connaissances, contribuer à des projets open source est une manière de soutenir ces valeurs.
- Construction de réseaux et de relations : En contribuant à des projets open source, vous avez l'opportunité de collaborer avec des personnes du monde entier. Cela peut vous aider à élargir votre réseau et vous permet d'établir des relations avec des experts du domaine.
- Apprentissage et développement des compétences : Participer à des projets open source est un excellent moyen d'apprendre de vous former sur de nouvelles techno et de perfectionner celles que vous maitrisez déjà.
- Satisfaction personnelle : On en parle pas assez, mais le fait de savoir que son travail est utilisé par d'autre et qu'il peut bénéficier à avoir un impact positif sur la communauté open source permet d'avoir une grande satisfaction personnelle.