Talks
Speakers
Events
Topics
Sign in
Home
Talks
Speakers
Events
Topics
Leaderboard
Use
Analytics
Sign in
Suggest modification to this talk
Title
Description
Contributing to Rails for the first time can be intimidating! What makes a good contribution? What does the review process look like? Why should I even bother in the first place? In this talk, we will answer all of these questions and more as we learn about contributing to the Rails framework. We will follow along with a real story of upstreaming a new feature, and learning about the hurdles encountered along the way, both expected and unexpected.
Date
Summarized using AI?
If this talk's summary was generated by AI, please check this box. A "Summarized using AI" badge will be displayed in the summary tab to indicate that the summary was generated using AI.
Show "Summarized using AI" badge on summary page
Summary
Markdown supported
In the video "How to Upstream Your Code to Rails" presented by Hartley McGuire at RailsConf 2023, the speaker guides developers through the process of contributing to the Rails framework for the first time. The discussion aims to alleviate the intimidation associated with making contributions and outlines practical reasons for becoming involved in open source development. Key points of the presentation include: - **Importance of Contribution**: Contributing to Rails reduces maintenance costs as the responsibility for code functionality is shared with the Rails community, allowing developers to focus on their applications. - **Knowledge Enhancement**: Engaging in the upstream process serves as a valuable learning opportunity, encouraging developers to explore existing code, understand its history using tools like `git blame`, and learn from experienced code reviewers. - **Being a Good Citizen**: By contributing, developers give back to the libraries that support Rails, ensuring a robust ecosystem for all users. - **Recognition**: Contributions are recorded, allowing developers to achieve recognition on leaderboards that celebrate open source participants. The speaker demystifies the types of contributions that can be made to Rails, including: - **Documentation Updates**: Improving the clarity and correctness of Rails documentation significantly enhances user experiences. - **Bug Fixes**: Developers are encouraged to find and address bugs in the Rails issue tracker, or through personal engagements with Rails in their applications. - **Performance Improvements**: Enhancements to the performance of Rails components are welcome, provided they are accompanied by benchmarking evidence. - **New Features**: Developers are also encouraged to contribute new, validated features, following real usage and testing in production environments. A detailed case study is presented where McGuire shares the story of contributing a validator called 'immutable validator', which aimed to restrict changes to specific attributes. The step-by-step approach included: 1. Initial preparation of the feature and requisite testing. 2. Crafting commit messages that are informative and align with Rails' contribution guidelines. 3. Navigating through feedback from the Rails community and then iterating on the feature based on suggestions. 4. Final implementation of the validator after thorough testing and discussions, ensuring that the feature would meet Rails' standards before submission. In conclusion, McGuire emphasizes the importance of contributing to Rails not just for personal gain, but to foster community growth and development within the open source ecosystem. Developers are encouraged to confidently engage in the contribution process, ultimately contributing to the evolution of the Rails framework and the enrichment of their own skills.
Suggest modifications
Cancel