Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Open Source: comprendre et contribuer

Open Source: comprendre et contribuer

BlueHats

May 21, 2021
Tweet

More Decks by BlueHats

Other Decks in Technology

Transcript

  1. Lionel LASKÉ • Responsable • Membre du board de l’organisation

    Open Source • Auteur et Lead développeur (+10 000 utilisateurs, +80 contributeurs) • Mentor Google Summer of Code depuis 2013 Crédits: Lionel Laské
  2. ü Pourquoi contribuer ? ü Quel projet choisir ? ü

    Comment contribuer ? ü Programmes pour démarrer: Ø Hacktober Fest Ø Le Google Summer of Code ü Faire votre première PR Crédits: Flickr - Gábor Hojtsy AGENDA
  3. Pourquoi contribuer à l’Open Source ? Crédits: The Noun Project

    - Arm by Alina Oleynik, Mentor/Give by Adrien Coquet, Tools by Gregor Cresnar, Worldwide by ATOM, Celebrity by achmad mulyana Améliorer ses compétences Apprendre ou apprendre aux autres Participer au bien commun Améliorer les outils qu’on utilise Rencontrer des gens du monde entier Se faire connaître
  4. La plupart des projets Open Source sont des échecs… •

    Les causes les plus courantes: • Ne répond pas à un vrai besoin • Plus assez de développeurs intéressés (ou le développeur principal s'en désintéresse) • Le projet est dépassé techniquement, un compétiteur fait mieux • Manque de documentation • Manque de leadership, pb de gouvernance, conflits • Manque de temps/d'argent Ø Ce fort taux d’échec n’est pas nécessairement une mauvaise chose: des graines sont plantées et cela encourage l’exploration de nouvelles idées ! Taux d’activité projets Open Source (Source: synopsis open hub)
  5. Identifier les signes vitaux d’un projet • Regarder les statistiques

    du projet • Watch / Star / Fork / Used by • Vérifier les commits • De quand date le dernier commit ? • Combien y a-t-il de contributeurs ? • Vérifier les issues • Combien y a-t-il d’issues ? • Sont-elles récentes ? • Sont-elles fermées régulièrement ? • Vérifier les PR • Combien y a-t-il de PR ? • Sont-elles récentes ? • Sont-elles revues/mergées régulièrement ? Crédits: Flickr - Airman Magazine
  6. Exemple: React contributors vs Vue.js contributors https://github.com/facebook/react/graphs/contributors https://github.com/vuejs/vue/graphs/contributors Evan You

    (auteur de Vue.js) Salarié de Facebook Salarié de Facebook Salarié de Facebook Ex-salariée de Facebook
  7. Vérifier que le projet est accueillant • Est-ce un projet

    Open Source ? Y a t-il une licence ? • Comment accueille t-il les contributeurs ? • Y a-t-il un guide du contributeur ? un code de conduite ? • Y a-t-il de la documentation ? • Y a-t-il des issues tagguées « good first issue » ? • Comment les mainteneurs répondent aux contributions ? • Répondent-ils rapidement aux questions/issues ? • Répondent-ils amicalement ? • Y a-t-il des discussions sur les issues/PR ? • Remercient-ils les gens pour leurs contributions ? Crédits: Flickr - José Carlos
  8. Exemple: Des listes de projets accueillants Crédits: DigitalOcean - Accord

    Project https://github.com/MunGell/awesome-for-beginners https://www.codetriage.com/
  9. Checklist : démarrer une contribution q Installer l'application/le projet (s'assurer

    que c'est la dernière version) q Jouer avec l'application/le projet, le tester q Lire la documentation q S'abonner aux listes de diffusion, forum, IRC, slack, … et se présenter q Identifier les commiter du projet q Commenter des posts/issues (c'est déjà une contribution !) q Déclarer une issue ØVérifier qu'il n'y pas déjà une issue similaire ØIndiquer les étapes pour la reproduire et l’env. de test q Faire une Pull Request Crédits: Flickr - Lindsey Turner
  10. Créer une Pull Request Créer une branche Faire ses commits

    Créer une PR Discuter Corriger Validation (par un commiter) Merge (par un commiter) ØLes Pull Request (PR) sont la base des contributions Open Source Forker Cloner https://guides.github.com/introduction/flow/
  11. Hacktober Fest • Evénement organisé par Digital Ocean pour inciter

    à contribuer à des projets Open Source • Chaque année du 1er au 31 Octobre • Les projets intéressés inscrivent leur repo et tagguent des issues « hacktoberfest » • Les 70 000 premiers participants qui font 4 PR gagnent un T-Shirt Crédits: DigitalOcean - Accord Project https://hacktoberfest.digitalocean.com/
  12. Qu’est-ce que c’est ? • Le Google Summer of Code

    (GSoC) est un programme « online » international destiné à encourager les étudiants des écoles et universités à participer au développement des logiciels open source • Les étudiants travaillent pendant l’été pour une organisation open source et reçoivent une rémunération de Google Crédits: Flickr - John Marino
  13. Objectifs du programme • Pour les organisations Open Source :

    identifier chaque année de nouveaux développeurs • Pour les étudiants : participer au développement de projets Open Source, se construire une expérience et un réseau, être rémunéré (~6,500€/3 mois) • Pour Google : soutenir le monde de l’Open Source Crédits: Wikipédia - The Pancake of Heaven
  14. Comment ça marche ? • Les organisations faisant de l’Open

    source font la demande à Google pour être des organisations du GSoC • Google choisit les organisations qui participent • Les étudiants soumettent leurs candidatures pour réaliser les projets proposés • Les organisations choisissent les meilleurs étudiants • Les étudiants développent, encadrés par les mentors des organisations Crédits: Flickr – Lionel Laské
  15. First Contributions • Un site pas à pas pour réaliser

    votre 1ere Pull Request • Faites une PR pour ajouter votre nom à la liste des contributeurs ! Crédits: DigitalOcean - Accord Project https://github.com/firstcontributions/first-contributions/
  16. Prérequis q Disposer d’un compte sur Github https://github.com/ q Avoir

    installé Git sur sa machine ou q Avoir installé Github Desktop sur sa machine https://desktop.github.com/ q Disposer d’un éditeur de texte (Vim, emacs, Notepad, Atom, VS Code, …) Crédits: Flickr - Tom Ray
  17. Les badges que vous avez débloqué Savoir comment contribuer #1

    Faire sa 1er Pull Request Savoir se présenter à une communauté Faire une 1er contribution Niveau 2 Faire une contribution significative Niveau 3
  18. Continuez votre route ! • Contribuer à un projet que

    vous aimez • Faites votre première contribution • Devenez top contributeur • Devenez un commiter • Lancez votre propre projet open source • Mais n’oubliez pas de mentionner la licence ! Crédits: Flickr – Rodney Campbell
  19. Pour en savoir plus • Retrouvez le cours dont est

    tiré cette présentation sur http://bit.ly/oscc-video • Tous les contenus sont sous licence CC-BY-SA