GSoC2016

Google Summer of Code 2016


Google Summer of Code is a global program focused on introducing students to open source software development. Students work on a 3 month programming project with an open source organization during their break from university.

Since its inception in 2005, the program has brought together almost 11,000 student participants and 10,000 mentors from over 113 countries worldwide. Google Summer of Code has produced over 50 million lines of code for 515 open source organizations.

Check Google Developers site for more information on how the program works.

OpenStack had the chance to join Google Summer of Code 2014 (more details here) and the outcome was very positive: we got 6 interns working on 5 different projects and now, some of those interns, continued contributing to our community. With this visibly great results, we decided to apply as a mentoring organization again this year for the Google Summer of Code 2016 internships.

Link to FAQs: here

What is OpenStack
OpenStack is an open-source IaaS cloud computing platform. Its mission is to provide a flexible solution for both public and private clouds of any size, and for this matter two basic requirements are considered: clouds must be simple to implement and massively scalable.

To meet these principles OpenStack is divided into different components that work together. It's computing, storage, networking, and all the other bits that help make this project, The Cloud.

OpenStack is continuously growing and new and exciting projects are being discussed everyday.

We encourage new contributors to participate and help us make OpenStack the most complete, reliable and flexible open-source cloud service!

OpenStack application for GSoC 2016
Why does your org want to participate in Google Summer of Code?

We are well aware that OpenStack as a community is enormous and that the amount and complexity of the code can be overwhelming for the vast majority of newcomers. Because of this, most of the contributors working on our project are full time software engineers. We consider that is vital for our project, in order to scale, to get fresh ideas and new points of views, and for that, we need to engage with more people. Students, in that sense, are a great fit. Having the possibility of offering summer internships is a great way to achieve this. Also, we love our community and project, and we truly believe that giving the possibility to work with us on the projects we have in our ecosystem and to learn from developers working on our community will be a great real-world experience for any student interested in cloud computing and will help them to define their next step in their professional careers.

How many potential mentors have agreed to mentor this year?

1-5

How will you keep mentors engaged with their students?

When doing the call for mentors we make sure that volunteer mentors are well aware of what we expect from them and that they are willing to work hard on their mentoring task. We encourage them to have weekly one-on-one meetings with their students and to integrate them to the rest of the community. We make clear that having a good communication with their students and with us, the coordinators, is mandatory to have a successful mentoring experience. That, in our experience with other remote internships, is the best way to ensure students engagement.

How will you help your students stay on schedule to complete their projects?

We ask our applicants to provide a clear and well-detailed schedule of how they are planning to solve the internship task we propose. In that sense, we make sure that mentors help them with all the details they need during the application period. Having a defined schedule help them to organize themselves and to achieve their short/medium-term goals and to ensure that by the end of the internship they accomplished their goal. If for some reason any problem arise during the internship, we can always discuss with the rest of the community what could be an acceptable work from our interns and help them to reach that alternate solution.

How will you get your students involved in your community during GSoC?

All OpenStack projects have a weekly meeting in which all the contributors gather to discuss about organizational and technical topics. We usually encourage interns to participate from that sessions, emit their opinions, and discuss with the rest of the community about the project they are working on. Also, we introduce them to the developers mailing lists and to the developers IRC channels so they can reach other devs for any question or concern they may have. We always notify the OpenStack community when we have interns working with us, so they make sure they devote some more time in answering and clarifying technical details.

How will you keep students involved with your community after GSoC?

OpenStack has a 6 month development cycle. After 6 months, we have the OpenStack Summit in which users, developers and operators get together to discuss about features in the latest release, share business stories and discuss new features for the next release. Also, this conference is a great way to get in touch with companies interested in hiring. To keep students involved in our community we will encourage them to join this conference, get to know all the people they worked with during their internship, participate on the design sessions and help them to get in touch with recruiters. OpenStack Foundation has a travel support program which our interns will be able to apply. Also, we will provide suggestions on how they can keep participating in our community with, if needed, less demanding tasks.

Has your org been accepted as a mentoring org in Google Summer of Code before?

Yes

Which years did your org participate in GSoC?


 * 2014

What is your success/fail rate per year?

The only time we managed to get accepted as a mentoring organization we had a 100% success rate. All our students finished their tasks as expected and kept engaged with the community.

If your org has applied for GSoC before but not been accepted, select the years:


 * 2015

Are you part of a foundation/umbrella organization?

No

What year was your project started?

2012

Mentors
If you're interested in mentoring for this round, please add your name, email, IRC handle and the kind of projects you're interested in mentoring below. Please ensure that the projects are official projects in OpenStack and are registered in the governance projects.yaml.


 * Victoria Martinez de la Cruz - victoria AT redhat.com - vkmc - Zaqar (Messaging and Notifications), Trove (Databases)
 * Davanum Srinivas - davanum AT gmail.com - dims - Oslo (Common Libraries), Nova (Compute), Magnum (Containers)
 * Kirill Zaitsev k.zaitsev AT me.com - kzaitsev_* - Murano (Application catalog)
 * Nikhil Komawar nik.komawar AT gmail.com - nikhil - Glance (Images catalog), Searchlight
 * Joshua Hesketh - josh AT nitrotech.org - jhesketh - Infra (Infrastructure)
 * Jon Bernard - jobernar AT redhat.com - jbernard - Cinder (Block storage)
 * Rosella Sblendido - rsblendido AT suse.com - rosella_s - Neutron (Networks)
 * Dina Belova - dbelova AT mirantis.com - DinaBelova - Ceilometer (Telemetry)

Mentoring advice
Don't know what it takes to be a mentor? Check out the following resources to get more information on how is to be a mentor for this internship and get some useful tips/tricks on mentoring:


 * GSoC Mentoring Manual
 * Outreachy Information for Mentors

Students
Students application period opens March 14th and ends on March 25th.

If you'd like to get started on your proposal early, go ahead and add your name, location, e-mail, IRC handle and the project you are interested in (if you already know about that!) here:


 * Varun Joshi - varunj DOT 1011 AT gmail.com - vjoshi
 * Varun Joshi - varunj DOT 1011 AT gmail.com - vjoshi

Communication
Questions? Comments? Concerns? Feel free to reach us, we are here to help!

Get in touch with coordinators, mentors and students through the openstack-dev mailing list and openstack-internships mailing list.

Also, you can find us at IRC in #openstack-gsoc at irc.freenode.org.

Internship proposal
Applicants have to submit an internship proposal in the Google Summer of Code 2016 administration site between March 14th and March 25th.

A good project submission should contain the following:


 * Project title
 * Name of the student
 * Student bacground (include social media as appropriate: Twitter, Blog, Github, etc)
 * Short abstract for the internship task
 * Internship task details and roadmap (separated in milestones)
 * Internship task schedule (a more granular description of how you are going to tackle your internship task)
 * Success criteria (how do you know when you are done?)
 * Why your contribution is important for OpenStack

To make things easier, we left a proposal template for you to check at GSoC2016/StudentApplicationTemplate.

And you can also check previous applications in:


 * OpenStack GSoC 2014 wiki
 * OpenStack GSoC 2015 wiki

Ready? Let's start to write your proposal!

Internship ideas
Suggestions for students to choose from for their applications are maintained on the Internship ideas wiki. This doesn't mean students have to stick strictly to this list; don't hesitate in propose projects by your own. Be proactive! All FOSS developers are used to go ahead and propose their own ideas for any new challenge they face, we would love to see the same in our interns!

When writing your proposal, try to estimate your timeline to fit the 4 month period of GSoC coding. Also, take into account that GSoC does not consider other projects than coding, so other ideas (like community tasks or i18n efforts) are not suitable for this internship.

More ideas
Still not something that fit your interests?

Check out for more project ideas in:


 * Cinder - Look through specs being proposed (https://review.openstack.org/#/q/project:openstack/cinder-specs,n,z)
 * Keystone - Look through specs being proposed (https://review.openstack.org/#/q/project:openstack/keystone-specs,n,z)
 * Neutron - Look through specs being proposed (https://review.openstack.org/#/q/project:openstack/neutron-specs,n,z)
 * Nova - Look through specs being proposed (https://review.openstack.org/#/q/project:openstack/nova-specs,n,z)
 * Oslo - Look through specs being proposed (https://review.openstack.org/#/q/project:openstack/oslo-specs,n,z) and those that are in progress (https://git.openstack.org/cgit/openstack/oslo-specs/tree/specs/kilo)
 * Rally - Look through specs being proposed (https://review.openstack.org/#/q/project:openstack/rally-specs,n,z)
 * Sahara - Look through specs being proposed (https://review.openstack.org/#/q/project:openstack/sahara-specs,n,z)
 * Swift - Look through specs being proposed (https://review.openstack.org/#/q/project:openstack/swift-specs,n,z)
 * Trove - Look through specs being proposed (https://review.openstack.org/#/q/project:openstack/trove-specs,n,z)
 * Zaqar - Look through specs being proposed (https://review.openstack.org/#/q/project:openstack/zaqar-specs,n,z)
 * Glance - Look through specs being proposed (https://review.openstack.org/#/q/project:openstack/glance-specs,n,z)
 * Searchlight - Look through specs being proposed (https://review.openstack.org/#/q/project:openstack/searchlight-specs,n,z)