GSOC 2018

Skaldarnar

Development Lead
Contributor
Art
World
SpecOps
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 :p

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);
      
    }
}
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.
  1. discuss proposals and give feedback (mainly SENIOR + potential JUNIOR, probably EVERYBODY for public proposals)
  2. selection of proposals for candidates (SENIOR)
  3. acquire additional mentors for selected and approved projects (SENIOR + JUNIOR)
  4. manage and steer project over the summer (mainly SENIOR with assistance from JUNIOR)
  5. review _and test_ PR submitted during the projects (mainly SENIOR+JUNIOR but open to EVERYBODY).
  6. evaluation of students (during the project and at the end) (SENIOR with optional input from JUNIOR)
If you have any questions let us know. I'd like to use this thread for further organizational announcements regarding GSOC that might otherwise get lost in the chat…

And now, let's get all even more excited about GSOC and get it rolling!
 

Skaldarnar

Development Lead
Contributor
Art
World
SpecOps
As sort of appendix to the post above, I would like to share some personal thoughts on the "formal process" outlined above.

First of all, it may sound more formal and restrictive than it actually is. I am glad for anybody that wants to spent his time on this project, and I'll give my best to make it easy for new people to jump on board. Terms like "isTechnicallyProficient" or "isGoodCommunicator" don't have a meaning set in stone. You are technically proficient if you know Java very well, if you know details about the entity system, about chunk loading, etc.

Similarly, not everybodyhere (maybe even only a few people) has English as his/her native language. You are communicating in chat, in the forum, and on GitHub, so there are lots of ways to give valuable feedback. Good communication skills (as in: speaking) are indeed required for being the primary mentor for a project as we usually set up voice/video calls to get direct status updates.

Maturity is another point that is quite vague. It is not necessarily connected to age! Just see it as matter of sorting out the typical troll (yes, there are technically proficient people with good communication skills that just want to troll, are at least have a very "special" way of interacting).

And finally, the time requirement. Nobody will go and check when you signed up for the forum, did your first PR, forked the project on GitHub or anything like that. From past experiences I know that people come and go, some stay for a few months, others a few years, and others show up from time to time and disappear for months in between. If you followed the project for reasonable time and if you have been active in chat, forum, or GitHub you qualify for this point!

That said, if anybody is interested to mentor just let us know! You can reply here in the forum, tell us on chat, are write a PM! Looking forward to a great summer :)
 
Top