Google Summer of Code (GSoC): Do's and Don'ts

Jenkins GSoC

The Do’s and Don’ts

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.

For Contributors (or Mentees)

✅ Do:

  1. Do Read the Documentation

  2. 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.

  3. 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).

  4. 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:

  1. 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.

  2. 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.

  3. 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.

  4. Don’t Ignore Feedback

    • Be open to constructive criticism. Incorporate feedback into your code and learn from it.

For Mentors

✅ Do:

  1. 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.

  2. 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.

  3. Do Be Inclusive and Respectful

    • Encourage mentees regardless of background, gender, or experience.

    • Be an example of empathy, respect, and encouragement.

  4. Do Provide Timely Feedback

    • Regularly review pull requests, proposals, and progress reports.

    • Give clear, constructive, actionable but kind feedback—praise good work too.

  5. Do Encourage Independent Thinking

    • Guide, don’t micromanage.

    • Encourage mentees to investigate and propose solutions, then offer direction when needed.

  6. 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.

  7. Do Promote Best Practices

    • Encourage clean code, documentation, testing, and community interaction.

    • Help them develop habits that extend beyond GSoC.

  8. 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:

  1. Don’t Go Silent

    • Inconsistent communication confuses and demoralizes mentees.

    • If you’re unavailable temporarily, inform your co-mentor and the mentee.

  2. 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.

  3. 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.

  4. 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.

  5. 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.

  6. Refrain from Accepting Requests for Personal Favors

    • Instead, encourage the mentee to revisit and review this guide.