Open main menu

Difference between revisions of "Summer of Code/Application/2012"

patch up language a bit
(Very preliminar version)
 
(patch up language a bit)
Line 44: Line 44:
The program gave tremendous boost to our project and brought several excellent developers to the team. That is why we adore GSoC so much! We wait eagerly each year for GSoC to start!
The program gave tremendous boost to our project and brought several excellent developers to the team. That is why we adore GSoC so much! We wait eagerly each year for GSoC to start!


What we hope to gain is valuable code contributions. In the past, we've had students take up and complete tasks which had been marked as "to-do", but the main developers were at a loss of time to implement them. The students have taken these up as self-contained GSoC projects and realized them. But also, some students have come up with new functionality, proposed and finally implemented it. These have been our favorite.
What we hope to gain is valuable code contributions. In the past, we've had students take up and complete tasks which had been marked as "to-do", but the main developers had no time to implement them. The students took these up as self-contained GSoC projects and realized them. But also, some students have come up with new functionality, proposing and finally implementing it. These have been our favorite.


In addition, we hope to gain new developers in the project. We hope that after their projects, students will stick around and improve them or work on other interesting tasks. We hope that GSoC brings the students in touch with open source and, in our case, bring them in touch with game developing. We hope these students will add their piece of code in this project and will keep on contributing afterwards.
In addition, we hope to gain new developers for the project. We hope that after their projects, students will stick around and improve them or work on other interesting tasks. We hope that GSoC brings the students in touch with open source and, in our case, brings them in touch with game developing. We hope these students will add their piece of code to this project, but will also keep on contributing afterwards.


We've been successful in the past five years and we're really looking forward to great results from the program this year too.
We've been successful in the past five years, and we're really looking forward to great results from the program this year too.
</span>
</span>


Line 55: Line 55:


<span style="color:red">
<span style="color:red">
In 2011, 4 team members mentored 2 students. Sadly, one gave up quickly, and the other succeeded in objectifying the CruisE engine, which was badly requesting it.  
In 2011, 4 team members mentored 2 students. Sadly, one gave up quickly, but the other succeeded in objectifying the CruisE engine, which really needed it.  
</span>
</span>


Line 105: Line 105:
We want our mentors to have the following qualities:
We want our mentors to have the following qualities:
# Be able to commit to participating for the entire duration of the program. They first and foremost have to be available to their students and the mentor team.
# Be able to commit to participating for the entire duration of the program. They first and foremost have to be available to their students and the mentor team.
# Have a considerable track record hacking inside ScummVM. They can help the students more effectively and in an immediate fashion this way.
# Have a considerable track record hacking on ScummVM. They can help the students more effectively and in an immediate fashion this way.
# Have the patience and skills to explain to their respective students on how to tackle their tasks. Also, to be able to help the students out in sticky situations.
# Have the patience and skills to explain to their respective students on how to tackle their tasks. Also, to be able to help the students out in sticky situations.
# Have a clear vision on how a task should proceed, both in broad strokes as well as in the technical details level. Allowing of course some freedom of movement to the students, where this is applicable.
# Have a clear vision on how a task should proceed, both in broad strokes as well as in the technical details level. Allowing, of course, some freedom of movement to the students, where this is applicable.


For this year, and this holds for our previous participations too, our mentors have volunteered to work with GSoC. This means that they primarily want to be involved in the program and that they are not dragged in to participate. Moreover, they have all been contributors to ScummVM for a long time. They feel comfortable around the ScummVM code and can guide students to perform their tasks. The majority of the mentors have also participated in past ScummVM GSoCs so they know their way around the procedures and have also refined their mentoring style. Some of them are/have been part of the academia, guiding real students. They have seen the student mentalité in-action and have experience helping people along. We are drawing the best available from our pool of developers to mentor GSoC students this year.
For this year, and this holds for our previous participations too, our mentors have volunteered to work with GSoC. This means that they primarily want to be involved in the program and that they are not dragged in to participate. Moreover, they have all been contributors to ScummVM for a long time. They feel comfortable around the ScummVM code and can guide students to perform their tasks. The majority of the mentors have also participated in past ScummVM GSoCs so they know their way around the procedures and have also refined their mentoring style. Some of them are/have been part of academia, guiding real students. They have seen the student mentalité in-action and have experience helping people along. We are drawing the best available from our pool of developers to mentor GSoC students this year.


===  Who will be your backup organization administrator? ===
===  Who will be your backup organization administrator? ===
Line 122: Line 122:
As for this year, we will firstly enforce certain rules at the program start. That is, we will clearly explain that this work should be considered as full-time, and that in any doubt we will not let the student enter the program.
As for this year, we will firstly enforce certain rules at the program start. That is, we will clearly explain that this work should be considered as full-time, and that in any doubt we will not let the student enter the program.


Second, we are going to introduce a new policy, that is, the students have to provide status to their mentors on a bi-daily basis at most. If a student disappears for more than 3 days without notifying of his/her mentor, the student will fail off the project. The students will be immediately aware of this during their applications. We have positively identified that frequent and meaningful communication goes a long way in keeping the students engaged and interested.
Second, we are going to introduce a new policy, that is, the students have to provide status to their mentors on a bi-daily basis at most. If a student disappears for more than 3 days without notifying his/her mentor, the student will fail the project. The students will be made immediately aware of this during their applications. We have positively identified that frequent and meaningful communication goes a long way in keeping the students engaged and interested.


Of course, comprehensive timelines will be required as usual, and we will accept only those of the students which will set realistic goals, thus minimizing the risk of getting intimidated. This factor too frequently leads to the student disappearing.
Of course, comprehensive timelines will be required as usual, and we will accept only those of the students which will set realistic goals, thus minimizing the risk of getting intimidated. This factor too frequently leads to the student disappearing.


During the program we will make sure that the students will feel comfortable with their tasks. Our mentors already have experience with that. Moreover, in difficult situations in the past there was not a single person feeling responsible for a particular student, but rather the whole project was trying to help when needed. These reflexes on behalf of the mentor group but also on behalf of the active team members of ScummVM have proven to be a pretty good "tool", especially last year, and we are going to do our best this year too.
During the program, we will make sure that the students will feel comfortable with their tasks. Our mentors already have experience with that. Moreover, in difficult situations in the past there was not just a single person feeling responsible for a particular student, but rather the whole project was trying to help when needed. These reflexes on behalf of the mentor group but also on behalf of the active team members of ScummVM have proven to be a pretty good "tool", especially <span style="color:red">last year</span>, and we are going to do our best this year too.


===  What is your plan for dealing with disappearing mentors? ===
===  What is your plan for dealing with disappearing mentors? ===
For the mentors, the risk is relatively low; our past experiences verify absolutely this claim. Two of our mentors are project leads and are reachable virtually 24/7 (in case of emergencies). We all have exchanged sufficient contact information (including cell phone numbers etc.) to be able to discover our whereabouts. Should something really bad happen which precludes a mentor from fulfilling his duties (including personal reasons), we will attempt to shift students to new mentors among the existing mentors, or drawn from our backup pool of mentors. This will depend on the number of students we have to mentor. The students will not be left hanging for any reason at all.
For the mentors, the risk is relatively low; our past experiences absolutely verify this claim. <span style="color:red">Two of our mentors are project leads</span> and are reachable virtually 24/7 (in case of emergencies). We all have exchanged sufficient contact information (including cell phone numbers etc.) to be able to discover our whereabouts. Should something really bad happen which precludes a mentor from fulfilling his duties (including personal reasons), we will attempt to shift students to new mentors among the existing mentors, or drawn from our backup pool of mentors. This will depend on the number of students we have to mentor. The students will not be left hanging for any reason at all.


===  What steps will you take to encourage students to interact with your project's community before, during and after the program? ===
===  What steps will you take to encourage students to interact with your project's community before, during and after the program? ===
In order to help the students familiarize themselves with the project, we have created several pieces of documentation for them. In particular, we have an exhaustive developer central where we describe the all-important internals of ScummVM. This is valuable as a quick reference as well as during the initial explorations of the codebase.
In order to help the students familiarize themselves with the project, we have created several pieces of documentation for them. In particular, we have an exhaustive developer central where we describe the all-important internals of ScummVM. This is valuable as a quick reference as well as during the initial explorations of the codebase.


Also the development team actively uses the forums, IRC, Wiki and the development mailing list during the entire project development. We consider out students to be special, but developers nonetheless. Each developer including our students is encouraged to take part in discussions, whatever the means these discussions occur. As a pragmatic fact, on IRC any student will be able to get support literally 24/7, as our developers are scattered all over the globe.
The development team actively uses the forums, IRC, Wiki and the development mailing list during the entire project development. We consider out students to be special, but developers nonetheless. Each developer including our students is encouraged to take part in discussions, whatever the means these discussions occur. As a pragmatic fact, on IRC any student will be able to get support literally 24/7, as our developers are scattered all over the globe.


Also not only the mentors but also the entire development team is encourage to communicate with the students. The students are marked with special flag on our IRC channel, so everyone know who they are. Also we require the students to write introductory letters to our development list, so everyone will have impression about them, their skills and their assigned task of course.
Not only the mentors, but also the entire development team, are encouraged to communicate with the students. The students are marked with a special flag on our IRC channel, so everyone knows who they are. And we require the students to write introductory letters to our development list, so everyone will have an impression about them, their skills and their assigned task (of course).


=== Are you a new organization who has a Googler or other organization to vouch for you? If so, please list their name(s) here. ===
=== Are you a new organization who has a Googler or other organization to vouch for you? If so, please list their name(s) here. ===
193

edits