|Deletions are marked like this.||Additions are marked like this.|
|Line 9:||Line 9:|
Student applications will open on 14th March.
|Line 68:||Line 70:|
|[http://code.google.com/soc/mentor_step1.html Apply through Google's online form.]
|Line 71:||Line 71:|
|* [http://mail.python.org/pipermail/python-dev/2006-April/063965.html Announcement made to Python-Dev]||* join the [http://mail.python.org/mailman/listinfo/soc2007-mentors soc2007-mentors mailing list]|
|Line 79:||Line 79:|
|Jython and its documentation, the Python web site).||Jython and its documentation, the Python web site). That said, projects relating to other Python libraries or applications that are relevant to the promotion of the Python programming language are also encouraged.|
|Line 88:||Line 88:|
This page coordinates the [http://code.google.com/soc/ Google "Summer of Code"] projects involving Python and mentored by the Python Software Foundation (PSF).
Discussion about any Python-related SoC topic should take place on [http://mail.python.org/mailman/listinfo/soc2007-mentors the soc2007-mentors mailing list].
- 2007 PSF SoC coordinator: James Tauber (jtauber at jtauber dot com).
Students: How to submit a proposal
Student applications will open on 14th March.
[http://code.google.com/soc/student_signup.html Apply through Google's online form.]
[http://code.google.com/soc/student_step1.html Submit an application.]
The Drupal folks have a good document on [http://drupal.org/node/59037 how to write a SoC application]
Google's [http://code.google.com/soc/studentfaq.html Student FAQ].
Tips on writing your proposal
Be detailed. Don't say "I want to improve Python's support of XYZ", because that's vague, making it difficult to assess the project's feasibility or the time required. Exactly what changes would you make to improve XYZ support?
Compare with alternative projects. If your project will do task XYZ, look at other existing projects that perform the same task and explain how yours is different or better. (Or you can write a proposal to finish an existing project instead.)
Try to provide a rough timeline. How much time would each change take (a day, a week, six weeks)? What intermediate milestones will there be? (e.g. for a game, you might get an initial graphic display in week 1, write a parser for level definitions in week 2, write a level editor in weeks 3 and 4, etc.)
Get feedback. Post the proposal to a relevant mailing list and ask for comments. Post the proposal to your weblog and see what people think.
Describe your experience. Why are you a good person to work on this project? What skills/interests/knowledge do you have that are applicable?
Suggest a mentor. If you know a developer who would be a good mentor for your project, contact him/her and ask if they're interested. In 2005 and 2006, some interesting projects went unfunded because there was no one in the pool of mentors who felt capable of handling them.
Looking at the list of PSF mentors can help you craft your proposal to match their interests.
Tips on participating
- Do not overbook yourself. Working on your project should be your main activity for the entire summer.
- You must provide weekly status reports.
- Participate in the developer community by joining python-dev, jython-dev, or whatever mailing list is appropriate.
- If you get stuck, ask for help instead of silently struggling. You can ask your mentor for help, or post a question to the development mailing list.
- You will be expected to learn how to use SVN.
Mentors: How to apply
The mentor's responsibility is to ensure the student makes progress. This could entail coaching them, providing motivation, making sure they aren't stuck, answering technical questions, or pointing the student to the proper resources.
Mentors should expect to get a weekly status report from their students, and should badger students who are not communicating. The weekly status should be reported to the PSF SoC coordinator.
However, the mentor is not expected to do work for the student.
Mentoring duties are expected to take a couple of hours per week.
- Add your name to the mentor list at ["SummerOfCode/Mentors"].
join the [http://mail.python.org/mailman/listinfo/soc2007-mentors soc2007-mentors mailing list]
[http://code.google.com/soc/mentorfaq.html Mentor FAQ]
For 2007, the PSF would like to concentrate on proposals that advance PSF projects (CPython and its documentation, Jython and its documentation, the Python web site). That said, projects relating to other Python libraries or applications that are relevant to the promotion of the Python programming language are also encouraged.
The following pages list some ideas:
SimpleTodo -- very small projects.
["CodingProjectIdeas/PythonCore"] -- ideas for the CPython interpreter.
http://wiki.python.org/jython/SummerOfCode -- Jython projects.