█
LastWrite
  • > Curriculum
  • > Pricing
  • > For Educators
  • > About
  • > Contact
Log InGet Started

Questions, concerns, bug reports, or suggestions? We read every message, write to us at [email protected].

More ways to reach us →
LastWrite

Structured computer science lessons for aspiring developers and security professionals.

[email protected]

(201) 785-7951

Mon–Fri, 9 AM–5 PM EST

Learn

  • Curriculum
  • Pricing

Company

  • About
  • For Educators & Schools
  • Contact Us

Legal

  • Terms of Service
  • Privacy Policy
© 2026 LastWrite. All rights reserved.
Curriculum/Software Engineering/Git and GitHub Pro/Contributing to Open Source
50 minIntermediate

Contributing to Open Source

After this lesson, you will be able to: Find a good first issue, fork and contribute to a real open-source project, follow its contribution guidelines, and get a pull request merged, then talk about it in interviews.

A merged pull request to a real open-source project is one of the strongest things a junior engineer can show. It proves you can read an unfamiliar codebase, follow a team's process, and collaborate with strangers under review. This lesson is both a how-to and the passion project for this subtrack: by the end you will have submitted a real contribution.

Prerequisites:Advanced Git Recovery

Why an open-source contribution carries weight

A personal project shows you can build. A merged open-source PR shows something rarer: that you can drop into code you did not write, follow conventions that are not yours, take review feedback without ego, and ship a change a maintainer trusts enough to merge. Hiring managers read it as 'this person can already work on a team.' It exercises every skill in this track at once: reading code, branching, PR hygiene, CI, and communication.

From zero to a merged PR

The full workflow. Your goal for this lesson is to complete it on a real project.

  1. 1

    Pick a project you actually use or understand, in a language you know. Familiarity beats prestige.

  2. 2

    Find a starter issue: filter issues by labels like `good first issue`, `help wanted`, or `documentation`.

  3. 3

    Read CONTRIBUTING.md and the code of conduct. Follow their setup, branch naming, and commit-message rules exactly.

  4. 4

    Comment on the issue to say you're working on it, so two people don't duplicate the work.

  5. 5

    Fork the repo, clone your fork, create a branch, and get the project running + tests passing locally first.

  6. 6

    Make the smallest change that fully solves the issue. Add or update tests. Run their linter and test suite.

  7. 7

    Open the PR from your fork: a clear title, a description linking the issue (`Fixes #123`), and what you changed and why.

  8. 8

    Respond to review politely and promptly. Push fixes to the same branch; the PR updates automatically.

  9. 9

    After merge: thank the reviewer, and save the PR link for your resume and interviews.

💡 PR etiquette that gets you merged

Keep it small and focused: one issue, one PR. A 1000-line PR that fixes five unrelated things gets closed. Match the existing style; do not reformat files you did not need to touch. Write a description the maintainer can review without asking questions: what, why, and how you tested it. Never argue with review feedback. Ask clarifying questions, make the change, or explain your reasoning calmly. Maintainers are volunteers. Use draft PRs for work in progress so reviewers know not to review yet.

Where to find good projects and issues

GitHub's own issue search supports `label:"good first issue"` across all public repos. Sites like goodfirstissue.dev and up-for-grabs.net aggregate beginner-friendly issues. Documentation fixes (typos, missing setup steps, unclear examples) are real, welcome contributions and a great first PR, do not dismiss them as 'not real code.' Maintainers value docs highly.

Common mistakes only experienced contributors avoid

Opening a giant PR that rewrites things nobody asked you to touch. Small and scoped gets merged; sprawling gets closed. Skipping CONTRIBUTING.md and getting the PR rejected on process, not code. Not running the project's tests/linter before opening the PR, so CI fails publicly. Going silent when a maintainer requests changes. Responsiveness is most of what gets a PR over the line. Picking a famous, fast-moving project for your first PR. Start somewhere smaller where maintainers have time to review.

Quick Check

What makes a first open-source PR most likely to be merged?

Pick the strongest answer.

Sign in and purchase access to unlock this lesson.

Sign in to purchase
←Monorepos with Turborepo
Back to Git and GitHub Pro
Passion Project: Pro GitHub Repo→