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

Contributing to Open Source as a Contributor and Maintainer

Contributing to Open Source as a Contributor and Maintainer

Contributing to Open Source can be an intimidating task. As a contributor, you often have to work on getting familiar with a project to contribute to it. As a maintainer, you are responsible for making the project move forward and manage contributions. Whether you are a maintainer or contributor, both sides have their challenges.

In this talk, I want to share my experience and perspective from contributing to Open Source projects from both sides, while sharing tips on how to start contributing to a new project and keeping a project appealing to new contributors. By the end of the talk, you’ll understand how we can collaborate more effectively by understanding each side.

Isabel Costa

October 15, 2020
Tweet

More Decks by Isabel Costa

Other Decks in Technology

Transcript

  1. Contributing to Open Source as a Contributor and Maintainer Isabel

    Costa @isabelcmdcosta isabelcosta.github.io
  2. → Software Engineer at Globality → AnitaB.org Open Source Admin

    & contributor & maintainer → GSoC 2018, 2020; GCI 2019 → Mentor at Coding Black Females Isabel Costa @isabelcmdcosta @isabelcosta isabelcosta.github.io
  3. What to expect? • Becoming contributor... • 7 lessons learned

    && tips as a contributor • Becoming a maintainer... • How I maintain • 7 lessons learned && tips as a maintainer • Final thoughts @isabelcmdcosta
  4. Dec ‘17: My first Open Source PR merged! Pull Request:

    https://github.com/fvcproductions/hire-me/pull/9 @isabelcmdcosta
  5. Why I contribute • Practise and learn new skills •

    Build portfolio • Give back to community (Volunteerism) • I love the community aspect of OS @isabelcmdcosta
  6. Other ways to contribute • Review pull requests from other

    contributors • Implement features and fix bugs • Be a mentor for a OS program/initiative • Help others contribute • Write documentation • Outreach / Research (e.g.: blog posts, promote a project, ...) • Report bugs • Manage issues and contributors • … bring what you’re good at to the table! @isabelcmdcosta
  7. So pay attention to ... • Is the community beginner

    friendly? ◦ Code of Conduct & Reporting Guidelines? • Is the community transparent? • Is the community inclusive? ◦ Look at community discussions • Is it open for every type of contributions? • Is the project active? ◦ Last commit date? # Open issues and PRs @isabelcmdcosta
  8. This can be fun … Open Source So is it

    all fun now? @isabelcmdcosta
  9. What did I learn from being a maintainer, so far?

    Here’s 7 lessons @isabelcmdcosta
  10. Tips to attract contributors • Promote project through outreach ◦

    Participate in OS initiatives ◦ Write & Talk about it • Easy development environment • Have a Roadmap • Beginner issues (“good first issue” or “first timer only”) • Communication channels • Good Documentation @isabelcmdcosta
  11. Resources License → https://choosealicense.com/ Code of Conduct → https://www.contributor-covenant.org/ Best

    practises for Maintainers & Contributors, etc → https://opensource.guide/ Automation tools: • GitHub Actions, Codecov, Codacy, Code Climate, CircleCI, TravisCI, ... Bot highlight: all-contributors/all-contributors @isabelcmdcosta
  12. "(...) the world is a better place when everyone takes

    time to understand one another. (...)" from Special Books by Special Kids video: https://www.youtube.com/watch?v=5pWrZQZb4BM @isabelcmdcosta