Google Summer of Code (GSoC) is a program that offers student developers stipends to write code for various open source projects. Google will be working 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,500 students with over 130 open source projects to create millions of lines of code. The program, which kicked off in 2005, is now in its fourth year. If you are feeling nostalgic or are interested in learning more about the projects we have worked with in the past, check out the 2006 and 2007 program pages.
While the majority of past student participants were enrolled in university Computer Science and Computer Engineering programs, GSoCers come from a wide variety of educational backgrounds, from computational biology to mining engineering. Many of our past participants had never participated in an open source project before GSoC; others used the GSoC stipend as an opportunity to concentrate fully on their existing open source coding activities over the summer. Many of our "graduates" have later become program mentors.
Google Summer of Code has several goals:
Not really. To be clear, Google will use the results of the program to help identify potential recruits. But that's not the focus of the program. Take a look at the organizations we've worked with in the past, and you'll see the vast majority are engaged in work that's not directly applicable to Google's business. That said, the more code out there, the more everyone benefits.
Additionally, we've heard from several of our past student participants that their participation in GSoC made them more attractive to potential employers, and most participants who have gained employment as a result of their GSoC work are not currently employed by Google. We're just pleased the program has helped some students when embarking on their technical careers. We're also pleased that the industry sees participation in the program as an additional factor to recommend a future employee.
We worked with 40 organizations in 2005, over 100 in 2006, and over 130 in 2007. We expect about the same number, perhaps a few more, to take part again this year.
We funded approximately 400 student projects in 2005, 600 in 2006, and 900 in 2007. We'll be funding a few more student projects in 2008.
We'll begin accepting applications from open source mentoring organizations on Monday, March 3, 2008; we'll stop accepting organization applications on Wednesday, March 12th.
The student application period begins Monday, March 24, 2008, and ends Monday, April 7th.
For full details, see the program timeline.
Here are the steps:
Google will pre-publish the evaluation questions for both students and mentors. Mentors will fill out mid-term and final evaluations for their students using the Google Summer of Code web app. These evaluations will be visible in the system to the mentor and the mentoring organization's administrator(s). Students will fill out a mid-term and final evaluation of their mentors online as well, and their evaluations will only be visible in the system to the mentoring organization's administrator(s). Program administrators from Google will have access to all evaluation data.
In almost all cases, students will never see their mentor's evaluation of their progress, nor will a mentor see a student's evaluation of her/his mentorship. However, in the case where the mentoring organization's administrator and a student's mentor are one and the same, the student's evaluation will be shared with the mentor. Organization administrators are expected to review mid-term and final evaluations and to provide course corrections where necessary.
In some cases, Google's program administrators may need to share the results of evaluations with the student and mentor, such as to arbitrate when payment should not be made; should this need arise, all parties will be notified in advance.
Full instructions for signing in and using the GSoC web app are available for students, mentors, and organization administrators.
The organization should choose a single administrator to submit its application via the GSoC web app between March 3-12, 2008.
In addition to anything else your organization would like to submit as an application, Google will be asking (at least) the following questions as part of the application process:
A few notes on the mentoring organization application:
An "Ideas" list should be a list of suggested student projects. This list is meant to introduce contributors to your project's needs and to provide inspiration to would-be student applicants. It is useful to classify each idea as specifically as possible, e.g. "must know Python" or "easier project; good for a student with more limited experience with C++." If your organization plans to provide an application template, it would be good to include it on your Ideas list.
Keep in mind that your Ideas list should be a starting point for student applications; we've heard from past mentoring organization participants that some of their best student projects are those that greatly expanded on a proposed idea or were blue-sky proposals not mentioned on the Ideas list at all.
Students can submit their applications via the GSoC web app from March 24, 2008, to April 7, 2008. We hear almost universally from our mentoring organizations that the best applications they receive are from students who took the time to interact and discuss their ideas before submitting an application, so make sure to check out each organization's "Ideas" list to see where you can go to get to know a particular open source organization better.
Your application should include the following: your project proposal, why you'd like to complete this particular project, and the reason you're the best individual to do so. Your proposal should also include details of your academic, industry, and/or open source development experience, and other details as you see fit. An explanation of your development methodology is a good idea, as well. If your organization has a specific application template they would like you to use, it will be made available to you to fill in when submitting your proposal via the GSoC web app.
Note that there is a 7500-character limit to proposals, so be prepared to supplement your proposal text with links to an external site. However, you should still plan to provide an abstract of your proposal, including a brief list of deliverables, via the GSoC web app to ensure that your work receives sufficient review; terse applications tend to look like incomplete applications during the review process.
Yes, each student may submit up to twenty applications. However, only one application will be accepted. We've heard from our mentoring organizations that quality is better than quantity.
Yes, as long as they meet all other requirements for program eligibility. Students should be sure to note their previous relationship with the project in their applications. New work will need to be done for the project as part of participation in GSoC.
That's up to you. Keep in mind, though, that our mentoring organizations will be publishing a list of proposed project ideas, so you may find that you'll want to revamp your application later, or create an entirely new one to address one of those ideas.
No, each participant is only eligible for one stipend.
No, only an individual may work on a given project. Of course, students should feel free to collaborate with others to accomplish their project goals.
That's fine, a little duplication is par for the course in open source.
While we greatly appreciate the value of documentation, this program is an exercise in developing code; we can't accept proposals for documentation-only work at this time.
A group running an active free/open source software project, e.g. the Python Software Foundation. The project does not need to be a legally incorporated entity. If you're looking for a broader picture, you can find a list of all mentoring organizations who have participated in the past on the GSoC 2005, 2006 and 2007 pages. Mentoring organizations must produce and release software under an Open Source Initiative approved license in order to participate in the program.
Each mentoring organization is expected to provide:
In addition to these responsibilities, a mentoring organization should actively encourage each student developer to participate in the project's community in whichever way makes the most sense for the project, be it development mailing lists, idling in the project's IRC channel, participating in the project's forum, etc. A truly successful mentoring organization will work diligently to ensure that as many of their students as possible remain active project participants long after the conclusion of the program.
An organization administrator oversees the overall progress of a mentoring organization and its students throughout the program. Organization administrators will have different responsibilities depending on the organization, but at the very least they will need to:
For some projects, the organization administrator also acted as an arbiter when disputes arose between students and mentors, but each project should individually decide how such situations should be handled.
Yes, but it's not strictly necessary. It's good to have a backup administrator identified who can cover for your administrator should s/he go out of town, etc. If your backup administrator becomes the primary administrator, make sure to notify Google's program administrators.
As you can see from the lists of our mentoring organizations for 2005, 2006 and 2007, many different types of open source projects participate in Google Summer of Code. As long as your project can provide mentors and is releasing code under an Open Source Initiative approved license, you are welcome and encouraged to apply. Unfortunately, there are far more great open source projects than we can work with, so if your project is highly niche or has very few users, chances are that your application will not be accepted.
You may also find our Notes on Organization Selection Criteria helpful.
We will announce the list of accepted mentoring organizations on the Google Summer of Code home page on Monday, March 17, 2008.
If you're interested in contributing to a particular open source project, there's no need to wait for Google Summer of Code to start; start idling in the project's IRC channel, subscribe to the development mailing lists, take a look through the bug tracker and submit a patch. If you see something that you think would make a particularly good project for Google Summer of Code, why not suggest it to the organization?
That said, though, we'll announce the list of accepted organizations on Monday, March 17, 2008. At that point, students should feel free to contact the mentoring organizations using the contact information listed on the project's "Ideas" page.
No, all proposals should be submitted to the mentoring organization using the GSoC web app.
No. While we hope that all the code that comes out of this program will find a happy home, we're not requiring organizations to use the students' code.
As long as the goals listed in a student's accepted application are met according to the judgment of her/his mentoring organization, the student will receive the stipend whether or not the project uses the code produced.
If you have an outstanding need for an alternate mentor, Google will accept suggestions. For instance, suppose you're working in a cryogenics lab and the only ones really qualified to judge your work writing profilers for liquid nitrogen delivery systems are other cryogenicists. In such a case, you can submit your "alternate" project application using the GSoC web app.
When applying, choose 'Google' as the mentoring organization. Your application should describe who you'd like to oversee your work and include detailed contact information for your proposed mentor. Google's program administrators will then review your application and notify you and your mentor whether your alternate project has been accepted. Please don't apply unless your proposed project has an academic research focus and you've already found an advisor from your university or industry to mentor you.
Please also note that we've accepted less than 15 "alternate" proposals per year historically, and the program doesn't currently have the resources to accommodate many applications outside of the domain of our registered mentoring organizations.
Yes. You must be 18 years of age or older by April 14, 2008 to be eligible to participate in Google Summer of Code in 2008.
In order to participate in the program, you must be a student. Google defines a student as an individual enrolled in or accepted into an accredited institution including (but not necessarily limited to) colleges, universities, masters programs, PhD programs and undergraduate programs. You should be prepared, upon request, to provide Google with transcripts or other documentation from your accredited institution as proof of enrollment or admission status. Computer Science does not need to be your field of study in order to participate in the program.
You may be enrolled as a full-time or part-time student. You must also be eligible to work in the country in which you'll reside throughout the duration of the program, e.g. if you are in the United States on an F-1 visa, you are welcome to apply to Google Summer of Code as long as you have U.S. work authorization. For F-1 students applying for CPT, Google will furnish you with a letter you can provide to your university to get CPT established once your application to the program has been accepted.
Google employees, interns, contractors, family members, or residents and nationals of Iran, Syria, Cuba, Sudan, North Korea, and Myanmar (Burma), with whom we are prohibited by U.S. law from engaging in commerce, are ineligible to participate. Mentoring organizations that are taking part in Google Summer of Code may add additional stipulations regarding which students may participate in the program under their auspices. Please see our Terms of Service for additional stipulations and requirements.
Mentor organizations must be organizations or individuals running an active and viable open source or free software project whose applications are approved by Google's Open Source Programs Office. Organizations based in Iran, Syria, Cuba, Sudan, North Korea and Myanmar (Burma), with whom we are prohibited by U.S. law from engaging in commerce, are ineligible to participate. Please see our Terms of Service for additional stipulations and requirements.
Google does not have specific eligibility requirements for mentors, as we know our mentoring organizations will be best able to determine the selection criteria for their mentors.
As long as you are enrolled in a college or university program as of April 14, 2008, you are eligible to participate in the program.
As long as you are enrolled in a college or university program as of April 14, 2008, you are eligible to participate in the program.
Yes, provided you meet all other eligibility requirements, you're welcome and encouraged to apply for this year's instance of the program. You might also want to consider becoming a mentor instead.
We've given this question a lot of thought, and we've decided it is best not to allow participants to do both. We want to make sure that each project and student receives sufficient attention, and we're concerned that this split in focus could create a bad experience for those involved. Please choose whether participation as a mentor or a student is more appealing to you and plan to apply accordingly.
The amount of time you will need depends on both the scope of your project and the requirements of your mentoring organization. While your organization may offer some flexibility around milestone completion dates, you should expect your project to be your primary focus this summer. If you have a great internship starting soon or you're planning a month long backpacking trip, you likely won't be a good candidate for the program.
While the answer to this question will vary widely depending on the number of students a mentor works with, the difficulty of the proposals and the skill level of the students, most mentors have let us know that they underestimated the amount of time they would need to invest in GSoC. Five hours per student per week is a reasonable estimate.
Each student (or her/his mentoring organization) must license all student GSoC code under a license palatable to the mentoring organization. Some organizations will require students to assign copyright to them, but many will allow them to retain copyright. If Google is a student's sponsoring organization, then the student keeps copyright to her/his code.
That depends on your mentoring organization. All code created by student participants must be released under an Open Source Initiative approved license. It's also extremely likely that your mentoring organization will have a preferred license(s) and that you will need to release your code under the license(s) chosen by that organization.
Talk with your mentoring organization about this and other technical style questions. Of course, the Python people will prefer Python submissions, and so on. Students should let us know in their applications what languages they're thinking about using.
All development occurs online; there is no requirement to travel as part of the program. Google makes no provisions for office space or travel to mentoring locations. Any such travel is undertaken outside the scope of the program.
All code development must happen in the open and all code must be made available publicly. Students may mirror development on their personal infrastructure if they wish. Students must also provide a copy of their code to Google to be publicly hosted by us.
| February 25: | Program announced. Life is good. |
|---|---|
| March 3: ~12 noon PST / 19:00 UTC |
Mentoring organizations can begin submitting applications to Google. |
| March 12: 12 noon PDT / 19:00 UTC |
Mentoring organization application deadline. |
| March 13-17: | Google program administrators review organization applications. |
| March 17: ~12 noon PDT / 19:00 UTC | List of accepted mentoring organizations published on the Google Summer of Code home page. |
| March 17-24: | Would-be student participants discuss application ideas with mentoring organizations. |
| March 24: ~12 noon PDT / 19:00 UTC |
Student application period opens. |
| April 7: 5:00 PM PDT / 00:00 UTC April 8, 2008 |
Student application deadline. |
| Interim Period: | Mentoring organizations review and rank student proposals; where necessary, mentoring organizations may request further proposal detail from the student applicant. |
| April 18: 00:00 PDT / 07:00 UTC |
|
| April 21: ~12 noon PDT / 19:00 UTC |
Accepted student proposals announced on the Google Summer of Code home page. |
| Community Bonding Period: | Students get to know mentors, read documentation, get up to speed to begin working on their projects. |
| May 26: |
|
| Interim Period: | Mentors give students a helping hand and guidance on their projects. |
| July 7: ~12 noon PDT / 19:00 UTC |
Mentors and students can begin submitting mid-term evaluations. |
| July 14: 12 noon PDT / 19:00 UTC |
|
| 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: ~12 noon PDT / 19:00 UTC |
Firm 'pencils down' date. Mentors, students and organization administrators can begin submitting final evaluations to Google. |
| September 1: 12 noon PDT / 19:00 UTC |
|
| 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: make the program even better, have fun and make new friends. |
You can also check out our Google Calendar in several formats:
Google will provide a stipend of 5000 USD per accepted student developer, of which 4500 USD goes to the student and 500 USD goes to the mentoring organization.
Please note that Google cannot issue any payments until the proper tax-related documentation is submitted. More detailed documentation on payments will be published later. There is no need to return any tax-related documentation to Google until we ask for it, and you will be given at least one month to submit your forms.
Absolutely. If you need documentation from Google to provide to your school so you can obtain course credit, let us know. We will not provide documentation to you until we have received a positive final evaluation from your mentor.
Not really. Many of our mentors get paid to work on open source. Some run their own consultancies, others tinker for some cash on the side, others work for large companies. Some profess to code for cotton.
That said, we do know it is tricky to introduce cash into the mix of Free and Open Source, but that is why we're working with external organizations with years of collective experience in this kind of thing.
We will need the following documentation from students:
Detailed instructions for obtaining and returning these documents to Google will be sent to the private students' mailing list. We will need to have all of this documentation on file before issuing payment to a particular student. Please note that you do not need to submit these documents to Google until we ask you for them; in the case of a Foreign Certification form, we will provide the form to you. You will have at least one month to complete your forms and return them to Google.
We will need the following tax related documentation from mentoring organizations:
Detailed instructions for obtaining and returning these documents to Google will be sent to the private mentors' mailing list. We will need to have all of this documentation on file before issuing payment to a particular mentoring organization. Please note that you should not provide any documentation to Google until we ask for it. You will have at least one month to complete the forms and return them to us.
Please talk to your international student affairs office for more details. In the past, students on an F1 visa have participated in Google Summer of Code through CPT, but you will need to check with your university to see what will work best.
If you need a letter from Google to establish CPT, please let us know. We will email the documentation to you. If there is specific information that must be contained in the letter or there are other instructions for returning it, e.g. it must be faxed to your student affairs office, include this information when requesting the documentation.
There are four program mailing lists:
Whether you have participated in the past or not, it's a great time to take a look at the Guide to the Program Mailing Lists. If you are a past participant in the program, now would be an ideal time to revisit and update your subscription preferences to the program mailing lists.
Yes. You can get your questions answered real-time and hang out with us in #gsoc on Freenode.
You can download flyers and post them around your campus. Several folks have also created presentations about the program and delivered them on campus or to their local user group. You might also want to tell folks to check out some of these videos about Google Summer of Code.
We are also asking for community help in translating the flyer, so if you're interested in contributing your skills in localization, please check out the program flyer wiki page for further details.
There are several other resources that may be helpful to you:
We also have a collection of subject-specific program documentation, e.g. for the web app, mailing lists, evaluations, etc.. Some of the documentation references the 2007 instance of the program and will be updated later in the course of GSoC 2008. However, the information is still useful for historical reference and for those wishing to understand more about the mechanics of the program.
You can submit bugs and feature requests to the Google Summer of Code project issue tracker. Please check to see if your problem is already a known issue before submitting a bug report.
Yes, all successful participants will receive a Google Summer of Code t-shirt. As part of the application process, we'll ask for your t-shirt size. Your t-shirt will be shipped once you've successfully completed your development work. Successful student participants will also receive a certificate of completion at the close of the program.
You can find a lot more information available on the program wiki. If these FAQs and the wiki still don't answer your questions, you can reach the Google Summer of Code program administration team via our support alias.