This wiki is archived and useful information is being migrated to the main bzflag.org website

Editing Google Summer of Code/2009/OrgApplication

Jump to: navigation, search

Warning: The database has been locked for maintenance, so you will not be able to save your edits right now. You may wish to copy and paste your text into a text file and save it for later.

The administrator who locked it offered this explanation: Archived wiki

The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then save the changes below to finish undoing the edit.
Latest revision Your text
Line 10: Line 10:
 
= Why is your group applying to participate? What do you hope to gain by participating =
 
= Why is your group applying to participate? What do you hope to gain by participating =
  
Our primary intention for participating in GSoC 2009 is to attract new developers.  We already have visibility, popularity, familiarity, and a very active community.  The strongest factor in our long-term development initiatives, however, is the number of active developers that we have at any given time.
+
Our primary intention for participating in GSoC 2009 is to hopefully attract new developers.  We already have visibility, popularity, familiarity, and a very active community.  The strongest factor in our long-term development initiatives, however, is the number of active developers that we have at any given time.
  
 
GSoC has shown to provide an exceptional opportunity for us to entice new developers to our community and keep them working with us over the long term.  It's been a great program for attracting new talent, inspiring new development initiatives, and even for getting our existing developers more organized and collaborating more effectively.
 
GSoC has shown to provide an exceptional opportunity for us to entice new developers to our community and keep them working with us over the long term.  It's been a great program for attracting new talent, inspiring new development initiatives, and even for getting our existing developers more organized and collaborating more effectively.
  
We've enjoyed collaborating on experimental efforts that have had strong academic and research goals, while helping promote and improve BZFlag in the process.  BZFlag is used by several universities (e.g., Brigham-Young University) as an artificial intelligence framework and has also been the subject of several academic research projects related to network communications (ACM-published research papers).  Indiana University researchers worked with our staff in 2007 to use BZFlag as a platform for conducting a social network analysis.  We'd particularly like to improve these facilities to help encourage even wider use of BZFlag for academic and research purposes.
+
We've enjoyed collaborating on experimental efforts that have had strong academic and research goals, while helping promote and improve BZFlag in the process.  BZFlag is used by several universities (e.g., Brigham-Young University) as an artificial intelligence framework and has also been the subject of several academic research projects related to network communications (ACM-published research papers).  Just this past year, Indiana University worked with our staff to use BZFlag as a platform for conducting a social network analysis.  We'd particularly like to improve these facilities to help encourage even wider use of BZFlag for academic and research purposes.
  
Task-wise, we hope to work with these new developers to implement several enhancements to BZFlag that we know will have a big impact on those that play the game.  Past participation in GSoC has stimulated our project development activities and forced us to become more organized, collaborative, and deliberate in our focus.  Our community members have great ideas for improving the game and we would like to encourage these developments.  GSoC provides a mutually beneficial means to that end, particularly for students that we can attract to our project as new developers that stay with the project.
+
Task-wise, we hope to work with these new developers to implement several enhancements to BZFlag that we know will have a big impact on those that play the game.  We discovered last year that participating in GSoC stimulates our project development activities and forces us to become more organized, collaborative, and deliberate in our focus.  Our community is simply filled with great ideas on how to improve the game in wide impacting ways and we would like to encourage these developments.  GSoC provides a mutually beneficial means to that end, particularly for students that we can attract to our project as new developers that stay with the project.
  
 
= What criteria do you use to select the members of your group? Please be as specific as possible. =
 
= What criteria do you use to select the members of your group? Please be as specific as possible. =
Line 36: Line 36:
 
= What is your plan for dealing with disappearing contributors? =  
 
= What is your plan for dealing with disappearing contributors? =  
  
If a student's interest or availability to participate in the summer project seems to be diverging or otherwise waning, efforts will be made to motivate the student through discussions and hands-on interactive development intended to stimulate their progress.  Being a 3D graphics-oriented game, we have the benefit of most tasks actually resulting in something "fun" that rather easily captures and maintains interest.  However, should the student's focus still remain diminished or should the student unexpectedly disappear, the administrator will relay this status to Google after repeated attempts to contact the student fail.
+
If a student's interest or availability to participate in the summer project seems to be diverging or otherwise waning, efforts will be made to motivate the student through discussions and hands-on interactive development intended to stimulate their progress.  Being a 3D graphics-oriented game, we have the benefit of most tasks actually resulting in something "fun" that rather easily captures and maintains interest.  However, should the student's focus still remain diminished or should the student unexpectedly disappear without notice, the administrator will relay this status with Google after repeated attempts to contact the student fail.
  
Students are expected to commit changes very frequentlyOur philosophy is that if they're not committing, then they are not working (at least not effectively).  Having them commit frequently gives us a very good estimate of their activity level as well as where they are in the development process.  We strongly adhere to "commit early, commit often."
+
Also, as a learned measure from last year, the students are going to be required to make very frequent commitsIf they're not committing, then they are not working.  At least they won't be working effectively.  Having them commit frequently gives us a very good estimate of their activity level as well as where they are in the development process.  We strongly adhere to "commit early, commit often".
  
If the student is not around or is not working as much as needed, we will have discussions with them, see what's going on, and do so proactively.  We learned from one student who was in serious danger of failing that a simple change in accountability can have a massive impact on motivation.  We will strive to recognize our students' personalities quickly, so that we can impose as much or as little process overhead as it required for them to be effective developers.  Additional process requirements (such as daily or weekly reports and commit quotas) may then be imposed for students that consistently fall behind schedule.
+
If the student is not around or is not working as much as they need to be, we will have discussions with them, see what's going on, and do so proactively.  We learned from one of our students last year when they were in serious danger of failing that a simple change in their accountability can have a massive impact on their motivation.  We will strive to recognize our students' personalities quickly, so that we can impose as much or as little process overhead as it required for them to be effective developers.  Additional process requirements (such as daily or weekly reports and commit quotas) may then be imposed for students that consistently fall behind schedule.
  
Similarly, by interacting with the students on a daily basis and preferably by having them be joined to our IRC channel while they are working on BZFlag, it allows mentors to keep a careful eye on all student progress and readily discuss issues with them.  As is done for any developer, having them be readily available for interactive discussion on IRC frequently helps avoid misunderstandings, disagreements, and frustrations and at worst makes any issues apparent as soon as possible.  The IRC channel is the hub of our primary development activity providing source commit announcements, developer access, user insight, interactive discussions, and prompt responses to questions and comments.
+
Similarly, by interacting with the students on a daily basis and preferably by having them be joined to our IRC channel while they are working on BZFlag, it allows mentors to keep a careful eye on all student progress and readily discuss issues with them.  As is done for any developer, having them be readily available for interactive discussion on IRC frequently helps avoid misunderstandings, disagreements, and frustrations and at worst makes any issues apparent as soon as possible.  The IRC channel is the hub of our primary development activity providing source commit announcements, developer access, user insight, interactive discussions, and near immediate response to questions and comments.
  
Other than that, the formula for dealing with disappearing students really just boils down to communication.  It is a very organic process and we don't believe that there is one answer for all students.
+
Other than that, the formula for dealing with disappearing students really just boils down to communication.  It's a very organic process and we don't believe that there is one answer for all students. The measures described above help us focus on having the most effective communication that works with our development team but will necessarily be tailored to each student individually.  Issues that we cannot resolve will be brought forward to Google for guidance, as was done last year.
 
+
The measures described above help us focus on having the most effective communication that works with our development team but will necessarily be tailored to each student individually.  Issues that we cannot resolve will be brought forward to Google for guidance.
+
  
 
= What is your plan for dealing with disappearing members? =  
 
= What is your plan for dealing with disappearing members? =  
Line 64: Line 62:
 
Being a game, i.e. an entertainment application, we have a somewhat unique benefit of actually being enjoyable before, during, and after the student's participation in the program and are even often "addictive".  Most people enjoy playing BZFlag and often after they play the game for a little while, they can "get hooked" on the game.  "Quick to learn, difficult to master" is our motto and this holds true both in the game and for development.  Once new developers see the impact they're having on such a large user community, they quickly become addicted to the development aspects and making things more enjoyable for our players.  We encourage our developers to play so that they understand the needs of the game and the needs of the existing player community in addition to becoming familiar with how various portions of the source code relate to behaviors in the game.
 
Being a game, i.e. an entertainment application, we have a somewhat unique benefit of actually being enjoyable before, during, and after the student's participation in the program and are even often "addictive".  Most people enjoy playing BZFlag and often after they play the game for a little while, they can "get hooked" on the game.  "Quick to learn, difficult to master" is our motto and this holds true both in the game and for development.  Once new developers see the impact they're having on such a large user community, they quickly become addicted to the development aspects and making things more enjoyable for our players.  We encourage our developers to play so that they understand the needs of the game and the needs of the existing player community in addition to becoming familiar with how various portions of the source code relate to behaviors in the game.
  
For student applicants we have a specific checklist of tasks to help them prepare to engage in routine development.  These steps include introducing themselves to our IRC channel, having a SourceForge account, becoming familiar with Subversion if they are not already, checking out the BZFlag sources, compiling their own version of BZFlag, playing the game with that version, registering with our global account services, becoming familiar with our websites and on-line services, and publishing their list of goals milestones for the community to see.  
+
Before the program, we have a specific checklist of tasks that we have prepared to give them definitive actions that they need to perform.  These steps include introducing themselves to our IRC channel, having a Sourceforge account, becoming familiar with Subversion if they are not already, checking out the BZFlag sources, compiling their own version of BZFlag, playing the game with that version, registering with our global account services, becoming familiar with our websites and on-line services, and publishing their list of goals milestones for the community to see.  
  
As our IRC infrastructure and developer operations are already well established, we can (and frequently do) readily point new developer interests to our documentation and engage them in discussion.  We have lots of existing documentation, web infrastructure, and network resources available to quickly get new developers familiar and interested in development directions.  Thanks to our previous involvement with GSoC, we have an established mindset of successful interaction criteria that gets students quickly involved in our user community so that they feel like part of the family.
+
As our IRC infrastructure and developer operations are already well established, we can (and frequently do) readily point new developer interests to our documentation and engage them in discussion.  We have lots of existing documentation, web infrastructure, and network resources available to get new developers familiar and interested in development directions quicklyGiven our involvement with GSoC last year, we now also have an established mindset of successful interaction criteria that gets students quickly involved in our user community so that they feel like part of the family.
  
One of the interactions that worked very well in 2007 was having the students directly interact with the users, letting them represent their efforts, and having their efforts be strongly supported and promoted by the other developers.  We intend to take additional steps this year to continuously integrate the students' code throughout the program and work on introducing our player community to the features being developed even more early on.  The goal will be to instill a sense of belonging and a sense of appreciation for the hard work they put into their code.
+
One of the interactions that worked very well last year was having the students directly interact with the users, letting them represent their efforts, and having their efforts be strongly supported and promoted by the other developers.  We intend to take additional steps this year to continuously integrate the students' code throughout the program and work on introducing our player community to the features being developed even more early on.  The goal will be to instill a sense of belonging and a sense of appreciation for the hard-work they are putting into their code.
  
 
= What will you do to ensure that your accepted contributors stick with the project after the program concludes? =
 
= What will you do to ensure that your accepted contributors stick with the project after the program concludes? =
Line 74: Line 72:
 
It is our responsibility to not neglect or abandon the students.  We have to give them the time and attention that they deserve, and we need to share with the students the respect and appreciation we have of their efforts so that they remain interested and involved.  BZFlag is fortunate to have not had any significant issues with attrition; many of our developers tend to remain involved with the project for a long time.  There is natural turn-over as interests shift and general fluctuations from year to year, but we sustain a relatively stable development rate and that is in no small part due to our interactive and friendly development environment.
 
It is our responsibility to not neglect or abandon the students.  We have to give them the time and attention that they deserve, and we need to share with the students the respect and appreciation we have of their efforts so that they remain interested and involved.  BZFlag is fortunate to have not had any significant issues with attrition; many of our developers tend to remain involved with the project for a long time.  There is natural turn-over as interests shift and general fluctuations from year to year, but we sustain a relatively stable development rate and that is in no small part due to our interactive and friendly development environment.
  
New developers are often enticed to stick around and contribute simply because we actively promote their changes to the user community when releases are made, and the user community responds vocally to just about every single modification that gets made to the game no matter how small.  For the topics that we are soliciting ideas, the efforts of the student have the ability to make a major impact on the game that will be exceedingly visible, and will encourage continued development not only by the student but other developers as well.  We will necessarily encourage students to remain involved with the project by welcoming them to our development team, integrating them as quickly as possible, giving them development responsibilities, and showing them the rewards and impact of their efforts.
+
New developers are often enticed to stick around and contribute simply because we actively promote their changes to the user community when releases are made, and the user community responds vocally to just about every single modification that gets made to the game no matter how small.  For the topics that we are soliciting ideas, the efforts of the student have the ability to make a major impact on the game that will be exceedingly visible, and will encourage continued development not only by the student and other developers as well.  We will necessarily encourage students to remain involved with the project by welcoming them to our development team, integrating them as quickly as possible, giving them development responsibilities, and showing them the rewards and impact of their efforts.
  
 
It's our job to encourage their passion for BZFlag development long after GSoC concludes.
 
It's our job to encourage their passion for BZFlag development long after GSoC concludes.

Please note that all contributions to BZFlagWiki may be edited, altered, or removed by other contributors. If you do not want your writing to be edited mercilessly, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource (see BZFlagWiki:Copyrights for details). Do not submit copyrighted work without permission!

To edit this page, please answer the question that appears below (more info):

Cancel | Editing help (opens in new window)