guac/CONTRIBUTING.md at Main · Guacsec/Guac

🔗 **Source:** [guac/CONTRIBUTING.md at Main · Guacsec/Guac](https://github.com/guacsec/guac/blob/main/CONTRIBUTING.md#contributor-ladder)
> [!note]+ Document Notes
> tags: [ContributingGuidelines, OpenSource, CodeReviews, ContributorLadder, GUACProject]
> - ContributingGuidelines
> - OpenSource
> - CodeReviews
> - ContributorLadder
> - GUACProject
> Author: [GUAC Project Team]
> Source: [GUAC Contribution Guidelines]
> Reference: [GitHub - GUAC Documentation]
> date created: 2024-09-10
>
> # Title: How to Contribute to GUAC
>
<!-- deep-read:sections start -->
## Table of Contents:
- [Developer Certificate of Origin](#developer-certificate-of-origin)
- [Code Reviews](#code-reviews)
- [Community Guidelines](#community-guidelines)
- [Getting Started](#getting-started)
- [Contributor Ladder](#contributor-ladder)
- [Inactivity, Stepping Down](#inactivity-stepping-down)
## 📝 Summary:
This guide provides the steps to contribute to the GUAC project, outlining the process for making contributions, the code review process, and the contributor ladder. It includes the necessary guidelines for getting started, understanding community roles, and how to move up the contributor ladder.
## 📖 Main Content:
### Developer Certificate of Origin
To contribute, all commits must contain a Signed-off-by line using the `-s` flag in `git commit`. This ensures compliance with the Developer Certificate of Origin (DCO).
### Code Reviews
- All submissions, including those by project members, require a code review.
- Pull requests must be reviewed by at least two reviewers.
- Following CNCF Supply Chain Best Practices ensures security in the project.
### Community Guidelines
- Follow the Code of Conduct and maintain a respectful environment.
- You can find good starting points by looking for labels like "good first issues" and "help wanted."
- Join the Slack channel for questions and discussions.
### Contributor Ladder
GUAC contributors progress through various roles:
1. **Community Participant**: Anyone can join, create PRs, comment on issues, etc.
2. **Reviewer**: Review contributions and ensure the PR follows guidelines.
3. **Owner**: Set direction for specific areas of the project.
4. **Maintainer**: Lead the project and participate in decision-making meetings.
### 🗒️ Notes:
- Contributors start as **Community Participants** with no special privileges.
- **Reviewers** are selected after proving expertise in a topic area and can approve PRs.
- **Owners** manage specific project areas and resolve trade-offs.
- **Maintainers** set the project's direction and oversee architecture and design.
## 🗣️ Paraphrase:
1. All contributors start as community participants. They can contribute by opening issues, submitting pull requests, and adding comments. As participants show expertise in one of the five areas (Ingestion, API, Backends, Frontend, or Clients), they may be promoted.
2. To be promoted to a reviewer, a community participant must demonstrate their technical proficiency in at least one area. Reviewers are responsible for reviewing contributions in their area and ensuring all contributions adhere to the guidelines.
## 🧪 Hypotheses:
- Engaging contributors early and guiding them through the contributor ladder will foster long-term engagement and community growth.
- Mandating reviews from multiple experts could reduce bugs and security issues in the codebase.
### 📊 Methodology:
To test this, track contributors' activity and retention rates at each ladder level. Use analytics to measure review effectiveness and the impact on code quality.
### ❓ Questions:
- How can the project further encourage first-time contributors to remain engaged?
- What methods can be introduced to simplify the review process without sacrificing quality?
### 🔮 Future Research:
Explore ways to enhance the reviewer and owner role development, potentially with mentorship programs or educational resources to further develop contributors' skills.
### 💡 Implications:
Improving the contributor ladder and providing clearer guidance will likely increase the number of long-term contributors. This will strengthen the project by diversifying contributions and reducing the burden on maintainers.
### ✅ Logical Validity:
The guidelines focus on clarity and security, ensuring that each contributor understands their role and how to progress. By emphasizing peer reviews and collaboration, the project reinforces trust and quality control.
## 🎯 Conclusion:
GUAC's contribution process is designed to be inclusive, structured, and secure. Following these guidelines ensures smooth collaboration and a clear path for contributors to grow within the community.
<!-- deep-read:sections end -->
[[3. Resources/Readwise/Full Document Contents/Articles/guacCONTRIBUTING.md at Main · GuacsecGuac|Full Document Contents]]
## Document Notes
---
tags: #ContributingGuidelines #OpenSource #CodeReviews #ContributorLadder #GUACProject
- ContributingGuidelines
- OpenSource
- CodeReviews
- ContributorLadder
- GUACProject
Author: [GUAC Project Team]
Source: [GUAC Contribution Guidelines]
Reference: [GitHub - GUAC Documentation]
date created: 2024-09-10
---
# Title: How to Contribute to GUAC
## Table of Contents:
- [[#Developer Certificate of Origin]]
- [[#Code Reviews]]
- [[#Community Guidelines]]
- [[#Getting Started]]
- [[#Contributor Ladder]]
- [[#Inactivity, Stepping Down]]
## 📝 Summary:
This guide provides the steps to contribute to the GUAC project, outlining the process for making contributions, the code review process, and the contributor ladder. It includes the necessary guidelines for getting started, understanding community roles, and how to move up the contributor ladder.
## 📖 Main Content:
### Developer Certificate of Origin
To contribute, all commits must contain a Signed-off-by line using the `-s` flag in `git commit`. This ensures compliance with the Developer Certificate of Origin (DCO).
### Code Reviews
- All submissions, including those by project members, require a code review.
- Pull requests must be reviewed by at least two reviewers.
- Following CNCF Supply Chain Best Practices ensures security in the project.
### Community Guidelines
- Follow the Code of Conduct and maintain a respectful environment.
- You can find good starting points by looking for labels like "good first issues" and "help wanted."
- Join the Slack channel for questions and discussions.
### Contributor Ladder
GUAC contributors progress through various roles:
1. **Community Participant**: Anyone can join, create PRs, comment on issues, etc.
2. **Reviewer**: Review contributions and ensure the PR follows guidelines.
3. **Owner**: Set direction for specific areas of the project.
4. **Maintainer**: Lead the project and participate in decision-making meetings.
### 🗒️ Notes:
- Contributors start as **Community Participants** with no special privileges.
- **Reviewers** are selected after proving expertise in a topic area and can approve PRs.
- **Owners** manage specific project areas and resolve trade-offs.
- **Maintainers** set the project's direction and oversee architecture and design.
## 🗣️ Paraphrase:
1. All contributors start as community participants. They can contribute by opening issues, submitting pull requests, and adding comments. As participants show expertise in one of the five areas (Ingestion, API, Backends, Frontend, or Clients), they may be promoted.
2. To be promoted to a reviewer, a community participant must demonstrate their technical proficiency in at least one area. Reviewers are responsible for reviewing contributions in their area and ensuring all contributions adhere to the guidelines.
## 🧪 Hypotheses:
- Engaging contributors early and guiding them through the contributor ladder will foster long-term engagement and community growth.
- Mandating reviews from multiple experts could reduce bugs and security issues in the codebase.
### 📊 Methodology:
To test this, track contributors' activity and retention rates at each ladder level. Use analytics to measure review effectiveness and the impact on code quality.
### ❓ Questions:
- How can the project further encourage first-time contributors to remain engaged?
- What methods can be introduced to simplify the review process without sacrificing quality?
### 🔮 Future Research:
Explore ways to enhance the reviewer and owner role development, potentially with mentorship programs or educational resources to further develop contributors' skills.
### 💡 Implications:
Improving the contributor ladder and providing clearer guidance will likely increase the number of long-term contributors. This will strengthen the project by diversifying contributions and reducing the burden on maintainers.
### ✅ Logical Validity:
The guidelines focus on clarity and security, ensuring that each contributor understands their role and how to progress. By emphasizing peer reviews and collaboration, the project reinforces trust and quality control.
## 🎯 Conclusion:
GUAC's contribution process is designed to be inclusive, structured, and secure. Following these guidelines ensures smooth collaboration and a clear path for contributors to grow within the community.
## Highlights
- All submissions, including submissions by project members, require review. We use GitHub pull requests for this purpose. Consult [GitHub Help](https://help.github.com/articles/about-pull-requests/) for more information on using pull requests. ([View Highlight](https://read.readwise.io/read/01j7f1kmq6rc3y787a1nsf4tr4))
- Note: 🎉 Welcome to this week’s edition, where we dive into the world of web development! Whether you're a newbie eager to learn or a seasoned pro keeping up with the latest trends, we’ve got you covered. Check out recent updates including our new plugins that will elevate your projects, highlights from our vibrant community, and essential tips on navigating the review process—because two heads are better than one! For more insights, visit [GitHub Help](https://help.github.com/) and join the conversation!
Here are the top three most important takeaways or to-dos based on your highlights and intent:
🔍 **Skill Identification**: Reflect on the specific skills or knowledge that are most valuable for contributors in each of the five topic areas of GUAC. Consider how new contributors can identify and leverage their strengths to align with these roles, which supports your focus on contributor engagement and education.
🔒 **Review Process Understanding**: Emphasize the importance of having two reviewers on every pull request. This not only enhances the security and quality of contributions but also provides a teaching moment for new contributors about best practices in open source, aligning with your commitment to educational efforts in the community.
👥 **Inactivity Implications**: Investigate the implications of inactivity on a contributor's status within the project and understand the emeritus process for active contributors who step away. This knowledge will inform your advocacy for sustainable contributor engagement and inclusivity, crucial for your aspiration to become an OSPO director.
1. What specific skills or knowledge are most valuable for contributors in each of the five topic areas of GUAC, and how can a new contributor best identify their strengths to align with these roles?
2. How does the requirement for two reviewers on every pull request enhance the security and quality of the contributions to the GUAC project?
3. What are the implications of inactivity on a contributor's status within the project, and how does the emeritus process work for highly active contributors who choose to step away?