3.4 KiB
Open Source Contribution Ideas & Notes
Welcome to open-source! Contributing to open-source projects is an excellent way to learn, collaborate, and build a strong portfolio. Here are some actionable ideas for how you can start contributing—whether to this OSSU Computer Science curriculum repository or any other project on GitHub.
1. Documentation Improvements (Great for Beginners)
Documentation is the backbone of any good open source project, but it often gets neglected by active developers. You can contribute by:
- Fixing Typos: Read through
README.mdor other guidelines and fix any spelling or grammatical errors. - Translating: Translate documentation into your native language to help non-English speakers use the tool.
- Clarifying Text: Rewrite confusing sentences to make project setup or rules easier to understand.
- Adding Examples: Code examples in the documentation keep getting outdated. Add clear, modern examples.
2. Issues labeled "good first issue"
Most major open source projects curate a list of easy bugs to help beginners onboard.
- Go to the Issues tab on GitHub.
- Filter by labels like
good first issue,beginner-friendly, orhelp wanted. - Comment on the issue to say you’d like to work on it, and mention if you need any initial guidance.
3. Curriculum & Course Content (For OSSU Repo)
Since you are inside the Computer Science curriculum repository, you could contribute by:
- Replacing Broken Links: Check if any of the course URLs or resources in
README.mdor course pages are dead. Submit a PR updating the link to a working one. - Course Recommendations: If you take a course and find an alternative that is much better, more interactive, and free, propose the change following
CONTRIBUTING.mdguidelines. - Updating Course Data: Course dates, lengths, and availability often change. Review course data and update the spreadsheet or markdown files.
4. Writing Tests
Engineers love code, but sometimes they forget to write tests. Adding test coverage is one of the most highly appreciated forms of contribution.
- Check if a project uses a testing framework (like PyTest, Jest, or JUnit).
- Look for functions that don't have tests and write them.
- Ensure the CI (Continuous Integration) pipeline passes before submitting the PR.
5. Reviewing Pull Requests
You don't just have to write code to contribute. Reviewing other people’s code is heavily valued!
- Help maintainers by testing other people's PRs locally.
- Leave constructive comments and let the author know if the code works as expected.
6. Community Support
Open source is built on community. You can contribute just by being active:
- Answering Questions: Answer questions from other learners in GitHub Discussions, Issues, or Discord servers.
- Reporting Bugs: If you find something that is broken, open a descriptive Issue. A good bug report with screenshots/logs is a great contribution.
🛠️ Example Workflow for Contributing:
- Fork the repository to your own GitHub account.
- Clone the fork to your local machine (
git clone <url>). - Create a new branch for your feature or fix (
git checkout -b fix-typo). - Make your changes and commit them clearly (
git commit -m "docs: fixed typo in README"). - Push to your fork (
git push origin fix-typo). - Go to the original repository and click Compare & pull request!