We are already right in the student application phase of this year's GSOC, and there has been some discussion on how we want to approach the program with regard to mentoring and organizations. Please have a look at the mentoring guidance below - we consider this to be a good, transparent approach to make GSOC a better experience for both mentors and students. Since we are all programmers, we went for a pseudo-code notation for better readability
We went for a 2-tier mentoring approach in order to keep an overview of our full mentoring power, and to give clear contact points for students. If you want to take more responsibility, please reach out to the "board members" (don't be scared off by the level of formality here) and we'll come to an agreement!
We still want to get as many people involved as are motivated to help in one way or the other. During the course of GSOC, many discussions and interactions with the community will happen, and that's where anybody can chime in and help students and mentors.
And now, let's get all even more excited about GSOC and get it rolling!
We went for a 2-tier mentoring approach in order to keep an overview of our full mentoring power, and to give clear contact points for students. If you want to take more responsibility, please reach out to the "board members" (don't be scared off by the level of formality here) and we'll come to an agreement!
Code:
class Board {
currentMembers = {cervator, josharias, manu3d, msteiger, oniatus, qwc, skaldarnar}
Board.promoteToMentor(contributor) {
evaluation = Board.evaluate(contributor);
if (evaluation == GOOD)
Board.inviteAsSeniorMentor(contributor);
else if (evaluation == PROMISING)
Board.inviteAsJuniorMentor(contributor);
else
Board.send(evaluation.getWhatToWorkOn(), contributor);
}
Board.evaluate(contributor) {
guidelines = {contributor.isTechnicallyProficient,
contributor.isGoodCommunicator,
contributor.isMature,
contributor.isWithTerasology >= 1 year}
if (contributor.isaMatchForAll(guidelines))
return GOOD;
else if (contributor.isaMatchForSome(guidelines))
return PROMISING;
else
return NEEDSWORK.setWhatToWorkOn(feedback);
}
}
- discuss proposals and give feedback (mainly SENIOR + potential JUNIOR, probably EVERYBODY for public proposals)
- selection of proposals for candidates (SENIOR)
- acquire additional mentors for selected and approved projects (SENIOR + JUNIOR)
- manage and steer project over the summer (mainly SENIOR with assistance from JUNIOR)
- review _and test_ PR submitted during the projects (mainly SENIOR+JUNIOR but open to EVERYBODY).
- evaluation of students (during the project and at the end) (SENIOR with optional input from JUNIOR)
And now, let's get all even more excited about GSOC and get it rolling!