Skip to Main Content
Workshop Beginner CC BY 4.0 (slides & workshop material) MIT License (demo code & example repositories)

Understanding and Contributing to Large Open Source Codebases

Proposal status is Review Pending
Session Description

Contributing to open source can be intimidating because of the size of the code base, uncertainty about how to contribute, and unfamiliarity with tools.

In this hands-on workshop, attendees will walk through the entire process of making a real contribution to an open-source project. The workshop is designed to cover practical skills necessary to successfully work with repositories, understand project structure, find entry-level issues, and make high-quality pull requests.

Attendees will:

1.Create a local development environment for an open-source project

2.Learn about repository structure, issues, and contribution guidelines

3.Learn how to effectively navigate large code bases

4.Learn how to debug issues such as dependency problems or broken examples

5.Make a real contribution (bug fix, doc, or improvement)

6.Create and submit a clean pull request using standard open-source workflows

7.Learn how to work with maintainers through code reviews

The workshop will mimic a real-world open-source contribution process, including forking, branching, commits, and pull requests.

At the end of the workshop, attendees will either have a live pull request or be ready to make their first contribution.

Key Takeaways

1.Step-by-step workflow to begin contributing to open source

2.Navigating and understanding large repositories

3.Debugging real issues in open-source projects

4.Writing clean pull requests and following contribution guidelines

5.Collaborating with maintainers and code reviews

6.Creating a strong open-source profile for internships and jobs

References

Session Categories

Contributing to FOSS
Technology architecture
Talk License: CC BY 4.0 (slides & workshop material) MIT License (demo code & example repositories)
Speakers are hidden and anonymized for this event.