Python Powered Logo

Google Summer of Code 2015 @ 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 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 2015, and this page coordinates those efforts.

The 2015 PSF GSoC coordinator is TerriOda. (terri on Freenode IRC, terrioda at gmail.com)

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

More org admins may be announced later. If you're interested in volunteering, contact Terri.

Mailing lists, IRC, and other ways to get in touch

Please note that Python has a Community Code of Conduct and mentors and students working with the PSF are asked to abide by it as members of the Python community.

2015 Application Template / How do I Apply?

Short application checklist:

  1. Read this this wiki page -- All of it! we've tried to give you all the information you need to be an awesome student applicant.

  2. Choose a sub-org (there's a list below)

  3. Talk to your prospective mentors about what they expect of student applicants and get help from them to refine your project ideas. Listening to your mentors' recommendations is very important at this stage!

  4. Prepare a patch for that sub-org

  5. Set up a blog where you will keep track of your GSoC progress

  6. Write your application (with help from your mentors!) Template: SummerOfCode/ApplicationTemplate2015

  7. Submit your application in Google Melange before the deadline Only applications submitted in Google melange before 1900 UTC March 27, 2015 can be considered. Note that you need to register for melange and submit eligibility paperwork before you'll be able to submit the your application.

Python Application Template

The 2015 Summer of Code Application Template for the Python Software Foundation is here:

SummerOfCode/ApplicationTemplate2015

Please discuss the application with your prospective mentors, as they may prefer a slightly different template. They are also your greatest resource for making the best possible application, so ask for feedback and work with them if they suggest modifications! Remember, the best proposals are *collaborative* works between the student and mentors. This is not like a final exam!

Google Melange

All applications MUST be submitted through the Google Melange System, here http://www.google-melange.com/gsoc/homepage/google/gsoc2015

You will need to set up an account and submit eligibility paperwork before you will be able to see the submission form.

Only applications submitted in Google melange before 1900 UTC March 27, 2015 can be considered. You can edit your application up until that deadline, so we recommend you submit something ASAP and then modify it as you get feedback from your mentors.

Preparing for GSoC 2015

Please note the Dates and deadlines for 2015. There should be a complete list of Python sub-orgs around March 17th.

Students

All prospective students are required to have completed the following to pass final screening:

Here's 7 steps to help you get started:

  1. Choose an organization to work with. Python has a lot of sub-projects (over 20 in 2014!), so this can be hard. See "How do I choose a project or a sub-org?" if you need help. You can try out the next steps with more than one org and make your decision once you get to know them, too!

  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" or "Dear mentors" 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.
  3. Set up your own development environment.

  4. Find some beginner-friendly bugs and try to fix them. Many projects have these tagged as "easy" "bite-size" or "beginner-friendly"

    • 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!
    • Having trouble figuring out which bugs are beginner-friendly? Send an email to the project mailing list saying something like "Hi, I'm a student developer interested in getting some open source experience and I was wondering if anyone could suggest some bugs that are suitable for a beginner in this project?"
    • Some projects have beginner-friendly "bite-sized" bugs listed in the OpenHatch search engine, found here: http://openhatch.org/search/

  5. Find bugs and report them. Hopefully you won't encounter too many, but it's always a good idea to get familiar with your project's bug reporting process.

  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 a lot of 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!

Not sure which projects will be participating in 2015? Well, neither are we! Many orgs won't decide until they can get commitment from mentors, and often mentors don't know their schedules until closer to the start of the GSoC period. But you can take a look at the list of organizations who participated in 2014 or previous years to get an idea of what projects might be participating. If you're interested in a Python-based project that hasn't participated in GSoC in the past, feel free to tell them to get in touch with Terri and the other org admins to learn more about participating in the future. They can reach all the org admins at the following email alias: soc2015-general-owner(at)python.org

Some links:

Mentors

Interested in mentoring?

The GSoC Mentors guide can tell you a whole lot about what the job entails. This is based on information compiled from many experienced mentors!

You should also read SummerOfCode/Expectations.

To get signed up as an offical mentor, contact your sub-org admin. (You'll need to do more than just sign up in melange, and they'll have the information for you.)

If you're not involved with any sub-org participating in GSoC but would still like to volunteer, get in touch with the Python org admins at soc2015-general-owner(at)python.org. There are often projects looking for more mentors and we'd be happy to get you in touch with someone who needs help!

New Sub-orgs

If you're a python-based project who'd like to participate in GSoC but hasn't done this before...

In short, we ask for 3 things:

  1. Your project needs to be a reasonably established python project.
  2. You need at least 3 mentors (a sub-org admin plus 2 more) signed up for the whole summer.
  3. You need to have a good ideas page available online. (Including well-described project ideas that can be completed during the GSoC period, as well as lots of "how to get started" information. See SummerOfCode/OrgIdeasPageTemplate for a starting template.)

Applications from new sub-orgs are closed for this year, although exceptions might be made if you have an incredibly compelling student applicant: please ask. Please get in touch with TerriOda and Python org admins at soc2015-general-owner(at)python.org.to learn more about what we need from you, what you can expect from us, and how to get involved in the future.

Alas, we don't have the resources to accept every project, but we try to support projects with a clear commitment to python!

Python Project Ideas

Ideas for projects and links to Python-related teams' idea pages will appear here once mentors have gotten in touch with TerriOda. (You can also check last year's page to find projects that might participate again.) We are still waiting for some sub-orgs to register enough mentors to participate with us; they will appear on this page as they finish the paperwork. New sub-orgs can apply up to March 16th.

If you are unsure if your favourite Python project will be participating, ask them and encourage them to sign up!

http://python.org/images/python-logo.gif

Core Python

CPython, its standard library, and its infrastructure.

Website | core-mentorship@python.org | #python-dev on Freenode | Ideas Page (Updated!)

http://www.mpia.de/~robitaille/astropy/astropy_gsoc_logo.png

Astropy

The Astropy Project oversees the development of a core package for Astronomy in Python, and fosters interoperability between Python Astronomy packages

Website | Mailing List | #astropy on Freenode | Ideas Page

https://farm8.staticflickr.com/7587/17066220246_e184b0fa0b_m.jpg

Dipy

Dipy is a free and open source software project focusing mainly on diffusion magnetic resonance imaging (dMRI) analysis.

Website | Mailing list |Ideas Page

Logo

GNS3

GNS3 simulates complex networks while being as close as possible to the way real, physical networks perform.

Website | #gns3 on Freenode | GSOC Ideas Page

ERAS Logo

Italian Mars Society

The European MaRs Analogue Station for Advanced Technologies Integration (ERAS) is a program spearheaded by the Italian Mars Society (IMS) which main goal is to provide an effective test bed for field operation studies in preparation for manned missions to Mars. ERAS projects, focusing on Virtual Reality (VR) simulations and Advanced Robotics, are all fully python-based.

Website | Mailing List | GSOC Ideas Page

Jython  Logo

Jython

Jython is Python for the Java platform

Website | #jython on Freenode |Mailing List | GSOC Ideas Page

Kivy Logo

Kivy Organization

Kivy is a cross-platform Python toolkit for the rapid development of applications that make use of innovative user interfaces, such as multi-touch apps.

Website | #kivy on Freenode |kivy-users Google Group | GSOC Ideas Page

http://martinos.org/mne/stable/_static/mne_logo.png

MNE-Python

MNE is a software package for processing magnetoencephalography (MEG) and electroencephalography (EEG) data.

Website | Mail List | Ideas Page

https://moinmo.in/moin_static19/common/moinmoin.png

MoinMoin Wiki

MoinMoin Wiki is a popular wiki engine in Python. It runs THIS site.

Wiki | Mailing List | Ideas Page | MoinMoin GSoC main page

http://old.myhdl.org/lib/exe/fetch.php/myhdl_logo_128.png?cache=&w=128&h=91

MyHDL

hardware description with Python

Website | Mail List | #myhdl on Freenode | Ideas Page

NetworkX

NetworkX

NetworkX is a software package for the creation, manipulation, and study of the structure, dynamics, and function of complex networks.

Home Page | Mailing List | Ideas Page

Qtile Logo

Qtile

A tiling window manager written in python

Website | #qtile on oftc |Mailing List | GSOC Ideas Page

http://pgmpy.org/_images/logo.png

pgmpy

Python library for Probabilistic Graphical Models

Website | Mailing List | #pgmpy on Freenode | Ideas Page

https://plone.org/logo@2x.png

Plone Foundation

Plone is a Python-based web content management system, first released in 2001

Website | #plone on Freenode |Mailing List | GSOC Ideas Page

https://avatars2.githubusercontent.com/u/6656233?v=3&s=100

pwntools / binjitsu

CTF framework and exploit development library

Website | Mailing List | #pwntools on Freenode | Ideas Page

https://cloud.githubusercontent.com/assets/276007/6099565/a4268f1e-afb0-11e4-8cd4-e6a8eb398288.png

PyDy

Multibody Dynamics with Python

Website | pydy@googlegroups.com | Ideas page | Chat (Gitter)

http://pypy.org/image/pypy-logo.png

PyPy

PyPy is a fast, compliant alternative implementation of the Python language (2.7.3).

Website | #pypy on IRC | Mail List | Ideas Page

http://scikit-image.org/_static/img/logo.png

scikit-image

scikit-image is an image processing package for the SciPy ecosystem

Website | Mailing List | IRC|Ideas Page

Logo

scikit-learn

Scikit-learn is a machine learning library in python. It makes machine learning algorithms accessible to non-experts, as a part of the scipy ecosystem.

Website | #scikit-learn on Freenode |Mailing List | GSOC Ideas Page

http://www.scipy.org/_static/images/scipy_med.png

SciPy/NumPy

SciPy (pronounced "Sigh Pie") is open-source software for mathematics, science, and engineering. The SciPy library depends on NumPy, which provides convenient and fast N-dimensional array manipulation.

Website | Mailing Lists | Ideas Page

http://scrapinghub.com/images/shub-standard-logo.png

Scrapinghub

Scrapinghub is a company focused on information retrieval and its later manipulation, deeply involved on developing and contributing in Open Source projects regarding web crawling and data processing technologies. This year we are applying with three of our most renowned projects, Scrapy, Portia and Splash.

Website | Mailing Lists | Ideas Page | Guidelines

http://statsmodels.sourceforge.net/devel/_static/statsmodels_hybi_banner.png

statsmodels

Python module for data analysis with statistical and econometric models

Website | mail list | Ideas Page

https://farm9.staticflickr.com/8365/8599916733_1139445065_m.jpg

SunPy

Python for Solar Physics

Website | sunpy-dev@googlegroups.com | #sunpy on Freenode | Ideas Page

http://www.sympy.org/media/logo.png

SymPy

Symbolic mathematics (computer algebra system)

Website | sympy@googlegroups.com | Ideas page | Chat (Gitter)

http://deeplearning.net/software/theano/_static/theano_logo_allblue_200x46.png

Theano

Theano is an optimizing compiler for numpy.ndarray and scipy.sparse matrix that generate GPU code and do symbolic differentiation

Website | theano-dev@googlegroups.com |Ideas Page

http://vispy.org/_static/img/logo.png

Vispy

High-performance interactive visualization in Python

Website | vispy@googlegroups.com | Ideas page

Friends of the PSF

These organizations applied and got in to Google Summer of Code separately, but we've worked with them in the past and they're awesome! If you wish to work with one of these groups, you should apply to them directly.

http://farm8.staticflickr.com/7432/12526610733_5a83e0b5f7_o.png

GNU Mailman

Mailing list package written in Python

Website | mailman-developers@python.org | [http://webchat.freenode.net/?channels=mailman|#mailman]] on Freenode | Ideas Page

http://www.astro.utoronto.ca/~kerzendorf/files/larger_logo_smaller.png

TARDIS-SN

Supernova radiative transfer in Python

Website | tardis-sn-dev@googlegroups.com | Ideas Page

Dates/Deadlines

Google's dates and deadlines for 2015.

Of note (All deadlines 1900UTC):

** These are Python-specific deadlines for mentors and sub-org admins. They're typically a few days before Google's official deadlines to allow Terri enough time to deal with any problems that might occur.

The time for all these deadlines is 1900UTC. See what time that is in other time zones.

More Information

SummerOfCode/2015 (last edited 2016-02-02 16:17:32 by EzioMelotti)

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