Open main menu

Difference between revisions of "GSoC Ideas"

2,319 bytes added ,  22:33, 24 April 2013
→‎Summer of Code Applications: Explain the general application layout in more detail.
m (Add two things you can tell us about you.)
(→‎Summer of Code Applications: Explain the general application layout in more detail.)
Line 29: Line 29:
* '''Name'''
* '''Name'''
* '''Email'''
* '''Email'''
* '''Online nicks''' - If you talk to us on IRC or elsewhere, please let us know which nickname(s) you use.
* '''Online nicks'''
: Please list the nicknames of the communication channels you plan to use to keep in touch with us. For example, list your IRC (on FreeNode) nick here.
* '''Project Title'''
* '''Project Title'''
: State precisely what your project is about. 40 characters is usually a good upper limit.
* '''Possible Mentor''' (optional)
* '''Possible Mentor''' (optional)
* '''Benefits to the ScummVM Community''' - A good project will not just be fun to work on, but also generally useful to others.
* '''Benefits to the ScummVM Community'''
* '''Deliverables''' - It is very important to list quantifiable results here e.g.
: A good project will not just be fun to work on, but also generally useful to others.
** "Improve X modules in ways Y and Z."
* '''Deliverables'''
** "Write 3 new man pages for the new interfaces."
: The deliverables will be used to evaluate your progress/success at the mid-term/final evaluations. Thus, it is very important to list quantifiable results here (this does not need to be a simple list!) e.g.
** "Improve test coverage by writing X more unit/regression tests."
:* "Improve X modules in ways Y and Z."
** "Improve performance in FOO by X%."
:* "Write 3 new man pages for the new interfaces."
* '''Project Schedule''' - How long will the project take? When can you begin work?
:* "Improve test coverage by writing X more unit/regression tests."
* '''Availability''' - How many hours per week can you spend working on this? What other obligations do you have this summer?
:* "Improve performance in FOO by X%."
* '''Skype ID''' - If you don't use Skype, install it.
: Make sure there is a clearly visible set of '''goals''' that need to be accomplished for your project to be considered successful. It is also encouraged to list additional goals you plan to accomplish in the course of your project if everything goes as expected. You already explained why your project is benefitial for us, however, here you should motivate why a goal is required for your success or just optional. Make sure not to mix the description of a goal with this.
* '''Phone Number''' - Cellular is preferable, for emergency contacts.
: In addition to the mere goals of your project define '''milestones'''. A milestone should be connected to the progress/accomplishment of goals. You should at the very least define 2 (two) milestones here. Again, describe the milestones and elaborate on your reasons for defining exactly these milestones. When you plan to accomplish the milestones will be handled in the schedule and not here.
* '''Timezone''' - Where do you live.
* '''Project Schedule'''
* '''Bio''' - Who are you (e.g. your age, university year, ...)? What makes you the best person to work on this project?
: Create a schedule with (at least) the granularity of weeks here. This schedule should, for example, explain how long your project will take and when you can begin to work on it. Please connect the individual weeks with the overall Summer of Code schedule, i.e. clearly make the mid-term evaluations (etc.) visible. There are multiple ways to organize this, we trust you to find the best way to present your schedule. However, we want to see a connection to the goals here. This includes elaborating why you think X takes time Y and what possible issues might arise here. Last but not least, put a fixed date for each milestone you defined here. We want at least one milestones before the mid-term.
* '''Pull Request''' - A link to the pull request you submitted as part of our [[Summer of Code/Project Rules | Project Rules]]
* '''Availability'''
: How many hours per week can you spend working on this? What other obligations do you have this summer?
* '''Skype ID'''
: If you don't use Skype, install it.
* '''Phone Number'''
: Cellular is preferable, for emergency contacts.
* '''Timezone'''
: Where do you live.
* '''Bio'''
: The two main questions you should answer here are:
:* Who are you?
:* What makes you the best person to work on this project?
: Make sure you fill this with some life. We would like to know your age and university year for example. Also, explain your connection to ScummVM in the general and to your project in specific. What experience do you have with C++ or other languages required in your project? Have you taken university courses which you think will be helpful? Did you work on any projects we can take a look at? Do you think you will learn anything from your proposed project (if yes, explain what)?
* '''Pull Request'''
: A link to the pull request you submitted as part of our [[Summer of Code/Project Rules | Project Rules]]


When writing this application, keep in mind that the application serves multiple purposes. First of all, it should identify the objectives of your project, i.e. what should be done. Furthermore, it needs to convince us your project is worth a slot/mentoring. Last but not least, it should convince us that you are indeed the right person for this task. A good example of what we do not want to see in your application is a copy of our version of an idea's description.
When writing this application, keep in mind that the application serves multiple purposes. First of all, it should identify the objectives of your project, i.e. what should be done. Furthermore, it needs to convince us your project is worth a slot/mentoring. Last but not least, it should convince us that you are indeed the right person for this task. A good example of what we do not want to see in your application is a copy of our version of an idea's description.
561

edits