Skip to content

Latest commit

 

History

History
94 lines (60 loc) · 5.08 KB

CONTRIBUTING-students.md

File metadata and controls

94 lines (60 loc) · 5.08 KB

Contributing Guide for Students


Getting Started Early

The best way to strengthen your application is to engage early with the organization you're interested in. Introduce yourself on their mailing list, or consider fixing a small bug. The opensource guide provides an excellent introduction to contributing to open source projects.

Am I Experienced Enough?

The answer is usually: Yes. We prioritize creativity, intelligence, and enthusiasm over specific knowledge of our libraries or algorithms. An interested and motivated student willing to learn is invaluable. The range of projects available caters to different backgrounds. If you have experience with your chosen project or its dependencies (e.g., language), make sure to highlight this. The FLOSS manual offers further insights into this aspect of GSoC.

Our Expectations From Students

During the Application Phase

These tips can enhance your application but are not mandatory.

Organizations generally prefer students who show regular communication with potential mentors/organization until Google announces the accepted projects. This demonstrates your reliability and good communication skills, essential for GSoC as students and mentors rarely meet in person.

When evaluating applications, we use the following points system for a baseline comparison of students. We list these points to help you apply successfully. You can always do more, but ensure to cover these bases. We promise to be fair and are here to assist you.

  • 5pts: Have you communicated with the organization's mentors?
  • 5pts: Have you communicated with the community?
  • 5pts: Did you reference projects you coded with links to repos or provided code?
  • 5pts: Did you provide several methods to contact you? (Email, Skype, mobile/phone, Twitter, chat, Tumblr if available)
  • 3pts: Did you include a preliminary project plan (before, during, after GSoC)?
  • 3pts: Did you state which project you are applying for and why you believe you will complete it?
  • 3pts: Do you have time for GSoC? (State your availability in your motivation letter, including other commitments)
  • 1pt: Did you add a link to ALL your application files on a cloud host like GitHub?
  • 0pts: Be honest! (Only universal Karma points 🙂)
  • 5pts: Did you create a pull request on the existing code?
  • 5pts: Did you continue communication until accepted students are announced?

During the Summer

The following are requirements for students during the summer.

Communication

  • Write a bi-weekly report in a blog.
  • Commit early and often, pushing to a public repository (e.g., GitHub) for review.
  • Actively engage in our project timeline during the community bonding period.
  • Communicate with your mentor every working day, preferably in public using your project's standard channels.
  • Notify us in advance if you are unable to work or communicate regularly.
  • Regular communication is crucial; failure to do so will result in failing the program.

Evaluations

  • Set realistic goals for all evaluation deadlines. Failing to meet these goals may result in a failed evaluation.
  • Create and have reviewed at least one public commit before each evaluation.
  • Have at least one commit merged into the current development branch by the end of summer to pass the final evaluation.
  • Time planning should include the review process.

Blog

  • Keep a regular journal of your GSoC experience, updating at least once every two weeks.

Default Instructions

These are general guidelines. Follow specific instructions given by organizations.

Mentor-proposed projects are listed on our uideas list.

You are encouraged to propose your own projects. If so, contact the organization early to discuss your idea. Proposals without a mentor will not be considered.

How to Write a Great Proposal

  1. Choose a project that interests you for an enjoyable few months.
  2. Contact us early for feedback to improve your application.
  3. Be original in your solutions and detailed in your project approach.

Your application should convince us of your capability to complete the project and benefit our users. If in doubt, contact us for advice.

Use our base template as a guide for writing your proposal.

Dividing Your Project

  • Plan to divide your project into small, self-contained subprojects.
  • Aim to merge at least one subproject around the phase 2 evaluations.
  • Plan for at least one commit reviewed by your mentor before each evaluation.
  • Regular communication with your mentor is vital for success.

Estimating Development Time

  • Start by fixing a simple bug or refactoring code.
  • Research the APIs you plan to use and plan your classes and algorithms.
  • Be conservative with your time estimates, especially if new to GSoC.

Final Proposal

Submit your final proposal to GSoC as a PDF. Name your proposal starting with [sub-org-name] for easy identification.