Google Summer of Code FAQ
- 1 Google Summer of Code FAQ
- 1.1 What is it?
- 1.2 I want to apply to Google Summer of Code
- 1.3 What are the requirements to be accepted for GSoC?
- 1.4 Wait, what interview?
- 1.5 How can I have an upstream contribution?
- 1.6 How to apply to Google Summer of Code?
- 1.7 What are my responsibilities as a student?
- 1.8 What can I expect from my mentor?
- 1.9 Is there a list of ideas for Libvirt?
- 1.10 I have my own not listed idea!
Google Summer of Code FAQ
What is it?
Google Summer of Code (GSoC) is an internal program which aims on promoting Open Source Software and teaching students contributing to it. For their efforts, students are rewarded with stipends provided by Google. During summer break students work on ideas for OSS projects while selected mentors from the projects help them, provide support and review.
I want to apply to Google Summer of Code
Awesome! This is the right place to seek for more info. Keep on reading.
What are the requirements to be accepted for GSoC?
Apart from official requirements you will have to meet the following:
- Successfully clone and compile libvirt
- Subscribe to the list
- Pass interview
- Have a small upstream contribution
Wait, what interview?
No worries. Interview is a great opportunity for both sides to ask questions. It is usually done via IRC. It consists of a coding exercise where you can prove your coding skills, and some generic chat about programming, the project and idea you applied for. Some examples of previous coding exercises can be found here:
How can I have an upstream contribution?
As strange as it might look like, this is a proof that you've managed to clone and build your own libvirt and subscribed to the list. Don't worry, there are no requirements on the initial contribution when it comes to complexity or a size of the change. We keep a list of fairly easy tasks for newcomers.
How to apply to Google Summer of Code?
Ideally, before applying for GSoC idea in the system you should contact the respective mentor for the idea to discuss the idea, its requirements and so on. A good application will require the following items:
- Present yourself
- Prove that you want to get involved into libvirt
- Explain what you want to achieve
- How do you plan to achieve it?
- Why should we choose you?
What are my responsibilities as a student?
- Communicate with your mentor weekly or more often
- Post some patches during community bonding period
- Write blog posts about your work
What can I expect from my mentor?
- They will be there for you
- They will help you set up your development environment, answer technical questions
- They will help you send your patches to the list
- They will provide you with feedback on your progress
Is there a list of ideas for Libvirt?
I have my own not listed idea!
Wonderful! Send an e-mail to the mailing list in which you describe it and we will get back to you.