Differences between revisions 19 and 20
Revision 19 as of 2016-01-20 06:50:04
Size: 11709
Editor: TerriOda
Comment: More updating for 2016, including mailing lists.
Revision 20 as of 2016-01-20 08:25:28
Size: 11710
Editor: TerriOda
Comment:
Deletions are marked like this. Additions are marked like this.
Line 73: Line 73:
 5. Have a good ideas page. (This sometimes takes a few rounds of revisions; Meflin will work with you to make sure your page is ready!  5. Have a good ideas page. [[https://wiki.python.org/moin/SummerOfCode/OrgIdeasPageTemplate|Here's a template.]] (Getting a really great page sometimes takes a few rounds of revisions; Meflin will work with you to make sure your page is ready!
Line 78: Line 78:

Note that an ideal ideas page includes a few ideas for students at all levels, beginner through expert.

Python Powered Logo

Google Summer of Code 2016 @ the Python Software Foundation

Google Summer of Code is a global program that offers post-secondary students an opportunity to be paid for contributing to an open source project over a three month period. Since 2005, the Python Software Foundation has served as an "umbrella organization" to a variety of Python-related projects, as well as sponsoring projects related to the development of the Python language. It is our intention to apply as a mentoring organization again in 2016, but please remember that we won't know if we've been selected until the end of February.

The 2015 PSF GSoC coordinator is TerriOda. (terri on Freenode IRC, terrioda at gmail.com, but please email gsoc-admins(at)python(dot)org if you wish to contact an admin.)

The other org admins include James Lopeman (meflin on IRC) and Florian Fuchs (florianf on IRC) and Kushal Das (kushal on IRC)

GSoC 2016 has not started!

With GSoC 2016 mentoring org applications not open 'till February 8, 2016, please remember that many mentors are not ready for GSoC mentoring yet and may be busy with other work. Please be respectful and patient! While it's never too early to get involved in open source, if you want to make the best impression on your communities, remember that we don't know anything about mentors, projects, sub-orgs, or even if Python will be accepted to participate at this point. Instead try questions like "How can I help?" or "I've tried to fix this bug, do you have some time to review my code?"

Dates and deadlines

Please note the GSoC dates and deadlines.

A few dates of note:

  • February 8-19, 2016. Mentoring org application period. By Feburary 19th, we should have a reasonable selection of sub-orgs and projects listed here.

  • February 29, 2016. Mentoring orgs announced. We will not know if Python has been selected as a mentoring org until this date.

  • March 7, 2016. Sub-orgs wishing to participate under the Python Software Foundation umbrella should have sent an email to gsoc-admins(at)python(dot)org by this date indicating interest.

  • March 14-25, 2016 Student application period.

  • April 22, 2016 Accepted students announced.

Students

Here's 7 things you can do to get started in free and open source software:

  1. Choose an organization to work with. See "How do I choose a project or a sub-org?" if you need help choosing. And don't forget, you can try working with more than one organization!

    • Experience with *any* open source group will help you prepare for GSoC.
    • But if you want the list of orgs who participated under the PSF banner last year, check last year's page here: SummerOfCode/2015 (We don't know who'll be able to participate in 2016, but that's a good place to start.)

  2. Start communicating with the developers. Join the mailing list, IRC channel, or any other communication channels the developers use. Listen, get to know the people involved, and ask questions.

    • If you want to make the best first impression, DO NOT start emails with "Dear Sir." Python has many mentors who are female and/or prefer other forms of address. Try "Dear developers" if you're sending a general email, or use whatever name they use on their email if you're addressing a specific person. Culturally speaking, first names or chosen nicknames are fine for most open source projects.
    • DO ask your question in public. Being able to participate in the open is a signal to developers that you're ready to participate in open source/free software, so it can improve your chances of being accepted to GSoC. It also means others can benefit from seeing your questions and the answers you get.

    • DON'T Ask to ask. Just get right to the point and ask your question without asking if you're allowed to ask a question first. See What does "don't ask to ask?" mean? for more explanation.

  3. Set up your own development environment. This can be a lot of work the first time, so budget time for it, and don't forget that you're going to want to run the code you've written, so you'll need some sort of test environment. This is a good time to practice asking good questions and helping improve setup instructions!

  4. Find some bugs and try to fix them. Many projects have bugs tagged as "easy", "bite-size", or "beginner-friendly" that will be easier for new contributors.

    • Note that if you apply as a student with the PSF you will be asked to submit a code sample, generally code related to your project. A few fixed bugs with code accepted upstream will make your application look great!
    • Some projects have beginner-friendly "bite-sized" bugs listed in the OpenHatch search engine, found here: http://openhatch.org/search/ And the OpenHatch team is full of friendly helpful people who don't mind answering questions!

    • Having trouble figuring out which bugs are beginner-friendly? Try searching for terms like "easy" in the bug tracker. Or just choose a bug that sounds easy to you and try to get started on it! What's easy for you may not be easy for others, so take advantage of your own skills and experience where you can. Remember to ask for help if you get stuck for too long, "I'm a new contributor and was trying to work on bug#123456. I have a question about how to..." -- if people can't help, sometimes they will be able to suggest another bug which would be more beginner-suitable.
    • Other "easy" bug ideas: look for typos and fix them. Set up new tests -- even if your project decides they don't need the first one you right, the practice of writing test cases will be useful for other development (e.g. when you want to add a new feature and need to include tests for it). Try using a tool like pylint to find style issues and correct those. (But pay attention to your project's style guide! Not everyone cares about the same things.)
  5. Find bugs and report them. It's always a good idea to get familiar with your project's bug reporting process. Writing excellent bug reports is a really useful skill, so try googling "writing good bug reports" and learn to write really great ones. You might even be able to help improve other people's bug reports by duplicating their results and asking questions to fill in information they didn't provide.

  6. Help with documentation. As a beginner in your project, you're going to see things that are confusing that more experienced developers may not notice. Take advantage of your beginner mindset and make sure to document anything you think is missing!

  7. Help others. This is a great idea for many reasons: explaining things can help you learn them better, demonstrating your skills as a good community member can make you more memorable when your mentors have to choose candidates, and being helpful makes your community a better place!

Mentors and sub-orgs

We won't start really gearing up until January 2016, but if you're looking for something to do, we do have a task list with ideas for next year and we'd love both suggestions and help: https://github.com/terriko/gsoc/issues

You can also drop by #python-gsoc any time to chat about ideas or get help with your plans for next year.

To participate under the Python umbrella, a sub-org must do the following:

  1. Be a Python-based open source project meeting Google's requirements for GSoC.
  2. Have one sub-org admin and at least two mentors who are willing to commit to the full GSoC period. (More is awesome, though!)
  3. Accept the Python Community Code of Conduct for the duration of the program.

  4. Send an email indicating interest to gsoc-admins(at)python(dot)org before the Python deadline (March 7th, exceptions can be made in the case of exceptional students)
  5. Have a good ideas page. Here's a template. (Getting a really great page sometimes takes a few rounds of revisions; Meflin will work with you to make sure your page is ready!

TerriOda has final say in which projects participate under the Python umbrella, but please send any queries to all the admins at gsoc-admins(at)python(dot)org to make sure we're all on the same page.

Python projects are welcome and encouraged to apply as separate mentoring organizations directly with Google. We're happy to help you fill out your application and improve your ideas pages, as well as link your page to help students find you. If we've worked with you before, we may also be able to be a reference for you. It is totally fine if you want to use the Python umbrella org as a backup plan in case you don't get selected and we do! (But of course, remember that there's no guarantee that we'll get accepted either.)

If you're a community member looking for a way to help but you're not part of one of our accepted sub-orgs, please contact our org admins (or at least TerriOda) to find out if there's any contributions we need that are a good fit for your skills. There are often groups who are looking for backup mentors and are willing to help you ramp up on a project, and we're also looking for folk who can hang out on the IRC channel to help students and mentors, folk who are willing to read and comment on student blogs, folk who can help with promoting the work our students do to the larger Python community, etc. If you want to help, we'd be happy to find a way to make that happen!

Getting in Touch

Sign up to the gsoc-general(at)python.org mailing list to get updates, reminders, and to discuss questions.

Stop by #python-gsoc on irc.freenode.net to chat and ask questions in real-time.

Do plan to stay for a while if you want answers on IRC: Our mentors generally have day-jobs and are not always paying attention to IRC (especially right now during GSoC off-season: expect more active mentors after Feb 29th). Please ask questions directly on channel (you don't need to introduce yourself or say hi first) and please be patient while waiting for an answer. You could wind up waiting an hour or much longer for answers if all the mentors are in meetings at work or otherwise occupied. If you can't stay that long, stay as long as you can and then send email to the mailing list instead so mentors have some way to reach you.

There are some great resources at http://irchelp.org/ if you need help finding a client or learning how to use IRC.

For mentors: All the gsoc admins can be reached at gsoc-admins(at)python(dot)org if you have questions about participating. (Students should email gsoc-general(at)python.org with all of their questions, unless they are of a sensitive personal nature.)

Sub-orgs and Project Ideas

This section will be updated around February 8th.

SummerOfCode/2016 (last edited 2016-10-01 00:05:22 by TerriOda)

Unable to edit the page? See the FrontPage for instructions.