wiki:SummerOfCodeGuidelines

Version 1 (modified by raimue (Rainer Müller), 15 years ago) (diff)

First draft of GSoC guidelines

Google Summer of Code: Guidelines for students

These are some notes all students should read and adhere. They are not meant to be carved in stone, but rather as a guide how we imagine your mentoring should work. In the following, you refers to a student working for MacPorts during GSoC.

Version Control

Commit early, commit often is a common phrase in Open Source development. In our case, we want you to show your work as early as possible.

  • Be honest about your version control experience. No problem if you need an introduction to Subversion, we will arrange that.
  • We will give you a branch to work on and expect bite-sized commits for easy review. This helps to give you feedback and it is also important to identify potential problems with your design at an early stage.
  • Please do not work the whole day and then push everything out in a single code bomb. Instead, every commit should be self-contained to one task only which should be summarized in the log message.
  • Please do not commit additional parts as "while I was at it". Instead, make a commit on its own.

Keep us posted

Always tell your mentor, all mentors or the whole community about:

  • What are you currently working on?
  • How far have you gotten?
  • What issues did you experience?
  • How will you overcome them?

If you are going to blog about your task, tell us the URL.

Public Discussion

Discuss your tasks with the community. You are working on a project which result is meant to be incorporated into MacPorts itself. The people in the community are those who are going to use it later, so solicit and appreciate their feedback. Subscribe and participate on the MailingLists and IRC. We are friendly and promise not to bite.

Help

Ask for help. Do not be afraid to ask your mentor or anybody of the community for assistance. It may happen that you don't know what to do next or how to approach the next task.

  • Speak to your mentor, that's what he is for.
  • Find the best medium to communicate with your mentor (Email, IM, IRC, VoIP, Telephone call?) and schedule together how often you will communicate (daily? weekly? every Monday/Wednesday/Friday?)
  • If you lost the communication channel to your mentor, immediately speak to other mentors and tell us about that. Unplanned gaps in communication should not happen and will probably hit your progress.