Google Summer of Code 2018
This page contains information about Fedora’s participation in Google Summer of Code (GSoC). Please feel free to contact us via the mailing list below for clarifications and more information. You can also use the IRC channel.
What can I do today?
Today you should read through the ideas and think about our application process.
Student Information
Do you want to contribute to one of the world’s leading innovative Linux distributions? GSoC could be your chance. Please refer to the information below.
-
If you’re interested in working on an existing project, read up on the project and the related technology. There is no need to contact the mentor unless you have a specific question about the project. Don’t send an "I’m interested" email.
-
If you’re interested in proposing your own project start looking around the Fedora Project for a mentor and send your idea to the mailing list or post it on the wiki.
-
You may also wish to start working on the Fedora specific parts of the application, see below for more information. Carefully review the student responsibilities section.
Why spend your summer working on FOSS?
When you work in the open on free software, you create a body of work that follows you for the rest of your life. Rather than a coding assignment done by thousands of other students and relegated to the bottom of the drawer at semester’s end, working in FOSS is a chance to contribute to a living project.
Working in FOSS gives you a chance to:
-
Work with real-world, large codebases.
-
Collaborate with real engineers and other professionals.
-
Contribute to something meaningful while learning and earning.
-
Learn tools and processes that are just like what you are going to use if you work in technology after graduation.
-
Make friends and contacts around the globe.
-
Attract attention that can lead to an internship or job after graduation.
-
Create lifetime connections and associations.
Why work with Fedora?
Our project is large and diverse. We are very experienced at working with new contributors and helping them be successful.
Many of our contributors are long-time contributors. They remain because they want to keep growing the project and to lend their expertise, advice and mentoring to you! People who stay around the community and do good work are noticed. They get hired for jobs from it, including being hired by Red Hat. Past Google Summer of Code students were hired by Red Hat, as well as interns in various positions. This is just an example, as experience and reputation in the Fedora Project communities is influential in your career in many ways.
As a long-standing community with many facets, it is possible for you to find many rewarding sub-projects to work on.
You should know that contributing to FOSS doesn’t require you to have super programming skills, or super-anything else. You just need be interested, curious, and willing to become comfortable being productively lost. This is the state of learning. You learn by finding your way around and figuring things out with the support of your mentor and the community.
If you are new to the Fedora Project, the following material will help you to get started.
Student Responsibilities
You are the key ingredient for your project’s success. This project is important to you, your mentor, and the entire Fedora Community.
Your responsibilities include:
-
Communicating early and often with your mentor.
-
Blogging every week about what you’re learning, how you’re doing, challenges and successes. This is key way to keep the entire Fedora Community informed.
-
Working with your mentor on realistic achievable milestones that provide for regular deliverables and feedback.
-
Attending the brief student calls, as announced
-
Being accountable for your success and your actions
Student Application
Please read and follow the student application process.
Mentor Information
Want to help the next generation of contributors grow? Want to bring new contributors to Fedora? Want to advance your projects along their roadmap? GSoC can be a chance to do all of this.
If you are contacted directly by a student, we encourage you to reply and include the mailing list and/or IRC channel to keep the process transparent and to ensure the inquiry is able to be answered by more people than just you. |
How to Propose a Project
If you want to mentor a specific project, think carefully about several things:
-
Do you have enough time to work on this with the student during the entire project. You will be helping someone else when they get stuck. You don’t want to become a blocker because you’re busy.
-
It is harder to find success when you are completely certain of how an idea needs to be implemented; finding a student with the skills and interest to implement a specific solution is a lot harder than finding a student with enough skills to respond to a use case need. Also, students learn more when they help design and guide the project. In other words, provide guidance and direction but let the student do some of the "driving."
-
Where you can have looser ideas, you may be able to find a student who works as a sort-of intern who can implement a solution to a use case you have. In past experiences, students going after a use case are more likely to get somewhere with self-direction and support from you.
-
Who can help you? Try to find a second mentor for the project.
If you’re interested in working with a student on a specific project you should post your idea to the Mentored Projects Issue Tracker. Your issue should be tagged GSoC and use the Google Summer of Code template. We strongly encourage you to find a second person to help with mentoring and to solicit feedback on your proposal
Can I be a Mentor Without a Project?
Yes! You can either:
-
Work with a student who brings an idea to your sub-project. This requires a different level of communication throughout the project, but can be the most rewarding.
-
Be a general mentor. This is a person who works with all students regardless of their project. To become a general mentor please open an issue in the Mentored Projects Issue Tracker offering your help. Please tag the issue with the GSoC tag.
How to work with students
-
Read about good mentoring in the Manual on Mentoring
Mentor responsibilities
You are an essential part of the student’s success, the project’s success, and the success for the Fedora Project.
Your responsibilities include:
-
Being an interface for an identified sub-project or SIG in Fedora.
-
Helping students communicate with the overall project and any upstream.
-
Helping the student plan realistic achievable milestones that provide for regular deliverables and feedback.
-
Regular communication with your student. This means you must be regularly available for the entire project. If you take a holiday you need to know early and help your student be ready for your brief absence.
-
Attending a brief mentors call, as scheduled.
-
Be the final, accountable person for deciding if the student is successful or not. This is responsibility akin to being a professor or boss.
Communication
-
Mailing List (GSoC-related): summer-coding@lists.fedoraproject.org
-
Mailing List (Technical): devel@lists.fedoraproject.org
-
IRC: #fedora-summer-coding or #fedora-devel on Freenode
Timeline
Always refer to the Official Google Summer of Code Timeline for details.
Administration
In order to get questions answered or obtain more information related to this year’s GSoC with Fedora, please contact the administrators directly (please consider CCing the summer-coding list where ever possible).
-
Brian (bex) Exelbierd (Primary)
-
Martin Bříza (Secondary)