Participating in open-source can be incredibly rewarding, but it also comes with certain norms and best practices. Here’s a comprehensive list of do’s and don’ts to help you contribute effectively and respectfully.
✅ Do:
Do Read the Documentation
Carefully read the project’s README, CONTRIBUTING guidelines, and Code Of Conduct.
Understand how to set up the project, what contributions are welcome, and the coding standards.
Do Communicate Respectfully
Be polite, inclusive, and professional in all interactions, including issues, PRs, comments, and more.
Assume good intent in others' contributions and feedback.
Do Ask Questions Thoughtfully (After Researching First)
You’re expected to be a self-directed learner
Try to solve problems yourself first, then ask thoughtful, specific questions.
When stuck, ask clear and concise questions. Include what you’ve tried and what isn’t working. Use GitHub, issue comments, or chat channels (Discourse/Gitter/Slack).
Do Be Patient
Open source moves at different paces. Mentors/contributors are volunteers who often juggle open-source work alongside full-time jobs, studies, or personal commitments.
Rushing or repeatedly pinging reviewers can come off as demanding.
Delays in replies or reviews are not a sign of disinterest—they’re normal.
❌ Don’t:
Don’t Be Disrespectful or Demanding
Open-source is built on volunteerism. Most maintainers, contributors, and mentors are volunteers who donate their time and expertise. Being demanding shows a lack of appreciation and understanding of this.
Open-source maintainers are more likely to help those who are kind, respectful, and humble.
Don’t Send Private Messages
Open-source values public communication
Open discussions help the whole community.
Others may have the same questions, and public answers help more people.
It can be seen as unprofessional or pushy
Mentors are often busy volunteers.
Unsolicited DMs (especially with vague questions or self-promotion) can come off as entitled or impatient.
You might miss out on better feedback
Mentors may prefer questions in GitHub, mailing lists, or chat channels where other contributors can also respond or add context.
Don’t Ask For Personal Favors
It’s Unprofessional and Should Never Be Asked
GSoC is not a personal mentorship or tutoring program—it’s a collaborative open-source initiative.
They are inappropriate unless a strong, long-term professional relationship has been built after the program.
It Can Damage Your Reputation
Asking for personal favors may come across as entitled or opportunistic.
It could affect how you’re perceived (which is small and self-seeking) in the open-source community.
Mentors are volunteers
They contribute their time and expertise to help improve open-source software, not to fulfill personal requests.
Don’t Ignore Feedback
Be open to constructive criticism. Incorporate feedback into your code and learn from it.
✅ Do:
Do Set Clear Expectations Early
Define communication channels, response times, work habits, and milestones.
Discuss mutual availability and time zones during the community bonding period.
Do Foster a Supportive Environment
Be patient and approachable.
Create space for questions and learning, especially since mentees may be new to open source.
Explain complex concepts in a way that fits the mentee’s experience level.
Celebrate wins, even small ones—positive reinforcement builds confidence.
Do Be Inclusive and Respectful
Encourage mentees regardless of background, gender, or experience.
Be an example of empathy, respect, and encouragement.
Do Provide Timely Feedback
Regularly review pull requests, proposals, and progress reports.
Give clear, constructive, actionable but kind feedback—praise good work too.
Do Encourage Independent Thinking
Guide, don’t micromanage.
Encourage mentees to investigate and propose solutions, then offer direction when needed.
Do Help Mentees Understand the Codebase
Point them to useful parts of the code, docs, or historical issues/PRs.
Offer walkthrough’s or suggest tools to understand the structure.
Do Promote Best Practices
Encourage clean code, documentation, testing, and community interaction.
Help them develop habits that extend beyond GSoC.
Do Track and Support Progress
Keep an eye on the project timeline and help mentees adjust the scope if necessary.
Be proactive if a mentee is struggling or disengaging.
❌ Don’t:
Don’t Go Silent
Inconsistent communication confuses and demoralizes mentees.
If you’re unavailable temporarily, inform your co-mentor and the mentee.
Don’t Be Harsh or Dismissive
Avoid discouraging criticism like “this is wrong” without explanation.
Mentees are here to learn—create a psychologically safe space.
Don’t Expect Mentees to Be Experts GSoC is a learning program, not a job.
Be forgiving of mistakes and focus on growth, not perfection.
Don’t Ignore Red Flags
If a mentee is unresponsive, plagiarizing, or violating the code of conduct, take it seriously.
Escalate to the org admin if needed.
Don’t Focus Only on the Deliverables
Help mentees grow as contributors and community members, not just produce code.
Foster long-term involvement in open source.
Refrain from Accepting Requests for Personal Favors
Instead, encourage the mentee to revisit and review this guide.