Skip to main content

Section 7.1 Quick Start

Contributing to a project is a great way to learn more about a project, to support the project, and to improve your resume. This section summarizes the process of contributing to a project that was detailed thoughout the previous chapters. With practice and persistence, you’ll likely become more comfortable with the process of contributing to open source projects. Enjoy your journey into the world of open source software!
  1. Find a Project.
    Explore a list of open source projects that are beginner friendly to discover an open source project that interest you. As you explore repositories, be sure to look for beginner-friendly projects with good documentation and an active community of maintainers. See Chapter 2 for more information on community.
  2. Explore the Project.
    Read the project’s README, contributing guidelines, and code of conduct thoroughly to understand the project’s goals, coding standards, and community norms.
  3. Join the Community.
    Introduce yourself on the project’s communication channels (e.g., mailing lists, Discord, Slack, or IRC). Get a sense of how things work in the community.
  4. Get Your Development Environment Set-Up.
    This is critically important! See Chapter 3 for more information on setting up your development environment. Pay particular attention to the section on how to access a shell in Section 3.1, particularly if you typically work in a Windows environment.
    Install the necessary development tools:
    • Git.
      Download and install Git from the official website and create a GitHub account. See the chapter on Chapter 4 for more information on all this. Warning: If you are using a Windows machine, be sure you are working in a Linux-compatible shell - see Section 3.1 for how and why.
    • IDE/Code Editor.
      Select an Integrated Development Environment (IDE) or a text editor suitable for the project’s programming language(s). See Section 3.3 for more information on IDEs and text editors.
    • Project Environment Specifics.
      Follow the project’s contributing guide in order to get everything you need to test locally. Do this slowly with attendion to detail. Fork the project repository and clone it to your local machine. See Section 4.6 for more information on how to do this. Then build locally.
      At a minimum, you will need to i.e. Fork -> Clone -> Build -> Test Locally.
  5. Start Small.
    Look for "good first issue" or "beginner-friendly" labels in the issue tracker. Choose a small task like a documentation improvement, a typo fix, or a minor bug fix as your first contribution. When you find something to work on, be sure to make a branch to do the work.
  6. Contribute.
    After you have forked the project, cloned it to your local machine, created a branch, made your changes, tested your changes, and then pushed them back to your forked repository, be sure to update your branch from the main project. Then you are ready to create a pull request to the original project repo, being sure to follow both the project’s contribution standards and code of conduct.
    i.e. Fork \(\Rightarrow\) Clone \(\Rightarrow\) Branch \(\Rightarrow\) Build \(\Rightarrow\) Test \(\Rightarrow\) Commit \(\Rightarrow\) Push \(\Rightarrow\) Update \(\Rightarrow\) Pull Request.
  7. Openly Receive Feedback and Iterate.
    Be patient, open, and responsive to feedback from maintainers and other contributors. Address the review comments and update your contribution accordingly. Be respectful of other contributors and users, even in times of disagreement. Remember that they are likely volunteers, and they have more experience with the project than you.
  8. Celebrate and Continue.
    If your contribution is accepted, celebrate your first contribution to open source software! Look for more challenging tasks as you gain experience and confidence. Stay involved in the project and continue contributing!
You have attempted of activities on this page.