In this discussion, open source enthusiast Andrew shares his extensive contributions while newcomer Julie seeks advice on starting out. They recount their early experiences and emphasize the role of mentorship. Andrew offers insights on navigating GitHub, finding beginner-friendly projects, and overcoming the fear of rejection. They humorously dissect the concept of the '10X developer' and highlight that open source isn't for everyone—it's crucial to find the right fit. Perfect for anyone curious about open source contributions!
Engaging with supportive communities like Ruby for Good allows new contributors to gain confidence and valuable mentorship in open source development.
Choosing familiar projects and utilizing resources such as GitHub's 'good first issue' can significantly enhance a developer's initial contributions in open source.
Deep dives
Navigating Initial Contributions to Open Source
Getting started with open source can be daunting for many junior developers, particularly due to a lack of guidance. The speaker highlights that finding a mentor or supportive community can significantly ease the transition into contributing. Through participation in a project known as Ruby for Good, individuals can learn more about contributing in a structured environment, with guidance from senior developers. This community-centric approach helps new contributors gain confidence as they learn the ropes of open source development.
Choosing the Right Project to Contribute To
Selecting an appropriate open source project to contribute to is essential for a positive experience. It is recommended to start with projects that developers are already using or are familiar with, as this familiarity can facilitate effective contributions. Additionally, the discussion covers various resources, such as GitHub’s 'good first issue' label and tools like Code Triage, which help new contributors identify suitable projects. By focusing on smaller, less complex gems rather than large frameworks, beginners can better manage their initial contributions.
Understanding Contribution Etiquette and Expectations
Proper etiquette when contributing to open source projects involves understanding the communication protocols of the project. It is suggested that individuals read all documentation and existing issues in the repository before asking questions. If issues arise during the contribution process, communicating with maintainers through comments is encouraged, particularly if a pull request (PR) is already open. New contributors should be prepared for varying levels of responsiveness, as some maintainers may not be actively engaged.
The Value of Open Source Experience for Career Development
Contributing to open source can significantly enhance a developer's skill set and resume when seeking job opportunities in tech. Many developers find that such contributions allow them to gain practical experience in a collaborative coding environment, which is often distinct from personal projects. Open source involvement demonstrates the ability to navigate code reviews and work with others, making candidates more appealing to potential employers. Moreover, maintainers may become invested in a contributor's growth, possibly providing references to aid in their job search.
Andrew and Julie talk about their first open source experiences. Andrew shares that he has always loved open source and does as much as he can. Julie had some questions around how to get started and Andrew shares some tips and tricks for interacting with projects and maintainers on GitHub and making high value contributions. After a brief aside about 10x developers, the pair talk about dealing with rejection and that it is ok and not personal when your contribution is turned down. Just like with companies, you have to find the right project for you and there is no shame in admitting when the task is currently over your head. Finally, Andrew and Julie wrap up with a disclaimer that open source isn't for everyone and that's ok.If you are thinking about contributing to open source or hesitant on starting, this one’s for you!