Google Summer of Code is a program that offers student developers stipends to write code for various open source projects. Google works with several open source, free software and technology-related groups to identify and fund several projects over a three month-period. Historically, the program has brought together over 1,000 students with over 100 open source projects to create hundreds of thousands of lines of code. The program, which kicked off in 2005, is now in its fourth year, following on from a very successful 2007.
This document describes the student guidelines for the Joomla! Summer Of Code program 2008. It contains information about the program schedule, program goals, program organization, the student (and project) selection process, conflict resolution/problem solving resolutions, what to expect (and what we expect), format of project proposal and of course communications and tooling.General program schedule
Joomla! Summer Of Code
- February 25: Program announced. Life is good.
- March 3: Mentor organizations can begin submitting applications to Google (~12 noon PST/19:00 UTC).
- March 12: Mentor organization application deadline (12 noon PDT/19:00 UTC).
- March 13-17: Google program administrators review organization applications.
- March 17: List of accepted mentor organizations published on code.google.com/soc/ (~12 noon PDT/19:00 UTC).
- Interim Period: Would-be student participants discuss application ideas with mentor organizations.
- March 24: Student application period opens (~12 noon PDT/19:00 UTC).
- April 7: Student application deadline 5:00 PM PDT/00:00 UTC on April 8, 2008.
- Interim Period: Mentor organizations review and rank student proposals; where necessary, mentor organizations may request further proposal detail from the student applicant.
- April 18:
o All mentors must be signed up and all student proposals matched with a mentor by 00:00 PDT/07:00 UTC;
o IRC Meeting to resolve any outstanding duplicate accepted students (timing TBD).
- April 21: Accepted student proposals announced at code.google.com/soc/ (~12 noon PDT/19:00 UTC).
- Community Bonding Period: students get to know mentors, read documentation, get up to speed in order to begin working on their projects.
- May 26:
* Students begin coding for their GSoC projects;
* Google begins issuing initial student payments provided tax forms are on file and students are in good standing with their communities.
- Interim Period: Mentors give students a helping hand and guidance on their projects.
- July 7: Mentors and students can begin submitting mid-term evaluations (~12 noon PDT/19:00 UTC).
- July 14:
* Mid-term evaluations deadline at 12 noon PDT/19:00 UTC;
* Google begins issuing mid-term student payments provided passing student survey is on file.
- Interim Period: Mentors give students a helping hand and guidance on their projects.
- August 11: Suggested 'pencils down' date. Take a week to scrub code, write tests, improve documentation, etc.
- August 18: Firm 'pencils down' date. Mentors, students and organization administrators submit final evaluations to Google (~12 noon PDT/19:00 UTC).
- September 1:
* Final evaluation deadline at 12 noon PDT/19:00 UTC;
* Google begins issuing student and mentor organization payments provided forms and evaluations are on file.
- September 3: Students can begin submitting required code samples to Google.
- October or November, details TBD: Mentor Summit at Google: Representatives from each successfully participating organization are invited to Google to greet, collaborate and code. Our mission for the weekend is to make the program even better, have fun, and make new friends.
The general goals of Google are recognized and extended with our own goals. In short, we want to improve the innovation within the project by offering students the opportunity to propose (research) topics that are Joomla! related. The Joomla! project offers students an inspiring environment in which to do research, create proof-of-concepts or create working functionality. The students get well guided by field experts. We do not specifically target at implementing work in the Joomla! framework, if it can be done in the Summer Of Code period this is perfectly ok, if not we still have well founded research and possible new talents for the working groups within the Joomla! project.
There is a non-limited list of program goals defined in the mentor guideline description. Please keep in mind that this is an initial list of subjects we would like to aim at, and the final program content is open for discussion. Students can send in their project proposals from March 24 - March 31 using the Google application. In the meantime you can discuss possible project proposals in the forum area.
- We don't want to put too many rules in place, but we ask every student to follow the proposal guidelines described below. This proposal guideline is put together based upon our experiences from past years.
- If you think you have a great idea, just go for it(!) and write your proposal, don't let the initial project ideas hold you back from proposing your own ideas!
We strive for a shallow hierarchy for the Joomla! project and the Summer Of Code program is no exception to that. There will be a formal program structure in place, but in general we like everyone to just do their job. For the mentors this means a big responsibility towards the Joomla! project and especially the students.
The total organization of the program will be done by the program leaders and mentors. The program leaders are Wilco Jansen and Ian MacLennan. For each accepted project there will be at least one mentor, depending on the subject there is no limit to the amount of mentors but we would like to limit to a maximum of two, else it is not clear to the student who is guiding him/her in the project realization. Student selection process
The basic process of student selection is pretty straight forward. All project proposals will be judged and ranked by the group of mentors. We have not set a limit to the number of projects we want to run this year - this depends on the final ranking and if we can offer sufficient mentor guidance. Something about improving the chance to be selected: The better you have defined your project proposal, the greater the chance that your project will be selected. A well defined project proposal leaves fewer questions for the mentors.
We also advise potential students to study the Google FAQ. A well defined target and a proper planning are essential to have a successful project!Conflict resolution and problem solving
It would be naive to assume that a group of people always can work together in perfect harmony. There are going to be times when someone feels they have been handled wrongly. In these times the following procedure should apply:
- Talk privately to the person concerned.
- If you still believe grievances exists, then bring in one or two other people to help mediate.
- If this fails then take the issue to the program manager (Wilco Jansen or Louis Landry).
- If this fails take the issue with the program manager to the Joomla! project leader.
Team members are encouraged to self-mediate all disputes. In all situations, treat 'wounds' appropriately. A prick on the finger just needs a tissue for a couple of seconds. Some grazes and cuts just need a Band-Aid to help heal well but will probably heal anyway if left untouched. More serious lacerations need immediate intervention for survival. If a wound is left to attract an infection then the obvious threat of gangrene is present.
The need to communicate, use several tools you (possibly) have never used, the differences in cultures, times etc. can be very intimidating. The first person to guide you is your mentor. A personal difference on how to proceed between you and your mentor can happen, and the program management is always open to offer coaching and guidance, but if possible we would like everyone to use the conflict resolution strategy as described above.What to expect, and what do we expect from you?
What we expect is simple. Dedication, devotion, an open mind and for all patience. You are part of this program to actually learn (and earn) something. Before you start we expect you to get acquainted with the tools we use: get prepared! Most important lesson from the previous Summer of Codes was the amount of time you need to spend on the project as a student. Doing a project in three months requires an estimate of 20-40 hours per week, threat it as a full-time job and be prepared when you start.
If you join as a student, what do you get in return? You can work in an open-source environment, meet great and inspiring people in a great open source project and most important you get guided by a field expert. It is all about sharing knowledge and working together toward common goals. We will be there to support you!What do we expect from you proposal?
As we explained, we don't use a specific format, but want the proposal to contain at least:
- A short introduction of you, name, age, kind of study you are doing, personal interests etc.
- A short description of your personal skills.
- Project definition in terms of goals to achieve.
- Project planning, including milestones to deliver. This is a very important aspect of your proposal. Recent years have taught us that project proposals tend to be ambitious. Make a plan, and try to determine if the goals you set are realistic. Ask for help in the forum, or contact the program leaders directly if you need help.
- Description of tools you are going to use. Also take a look at the tools we use in our project, most of them will be used very often.
- What do you want to learn in the Summer Of Code?
Any questions left? Post them into the forum area, this area will be the place to discuss on everything concerning the Google Summer of Code 2008!
May the source be with you :-D