This page coordinates the Google Summer of Code projects involving Python under the umbrella of the Python Software Foundation (PSF) for 2014.

The Python Software Foundation serves as an "umbrella organization" to a variety of python-related projects, as well as sponsoring projects related to the development of the Python language.

The 2014 PSF GSoC coordinator is TerriOda (at Questions should be directed to the mailing lists unless you have something particularly private to discuss.

Prospective Students

If you are a student interested in working on core Python development or on a project that helps the Python community, we'd love to have you apply to the Python Software Foundation for this year's Google Summer of Code!

We're currently in the process of finding mentors and getting ideas pages set up, but if you want to get a head start, feel free to browse through the projects at the bottom of this page. Choose a project or projects that sound interesting to you, subscribe to their mailing list or join their IRC channel, and try to set up a development environment. Usually, jumping right in and trying to solve a few bugs is a good place to start and a way to make a good first impression!

Students should read SummerOfCode/Expectations to understand what is expected of accepted students.

Please read SummerOfCode/Application for help completing your application.

This year's template is available at SummerOfCode/ApplicationTemplate2014.

Have questions?

For dates and deadlines, see the GSoC official website. (Scroll down past the calendar to just get a list of dates.)

Some dates of note:

Prospective Mentors

Please read SummerOfCode/Expectations to understand what is expected of GSoC project mentors.

New mentors are always welcome, and we have a variety of experienced mentors who can help with questions you have about mentoring! If you're new or unsure about the time commitment, we can often have you be a "backup mentor" in your first year so that you're paired with someone who's done this before!

We've set up an IRC channel: #python-gsoc on Freenode. Stop by and to ask questions or help prospective students!

Prospective Projects

Please get in touch with TerriOda and the other Python org admins at if you'd like to participate under the Python umbrella!

You will need:

  1. At least 3 mentors willing to mentor students for your project. (If you're having trouble finding enough mentors, talk to Terri to get linked up with prospective mentors who don't have projects.)
  2. An ideas page with clear project ideas for students to choose or use as a base to propose their own projects.

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

If you're a python-related project that is hoping to apply as a separate mentoring organization (i.e. not under the python umbrella) we're also happy to link your ideas page here to help you advertise. Again, get in touch with TerriOda and the other Python org admins at to make that happen, or edit this page yourself to add a link. (Use the Mailman entry below as a template).

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 expect the 2014 page to be complete around March 1st. (Why March 1st? Google makes their decisions about mentoring orgs on Feb 25th, and usually some of the ones who were too small will join us after that date.)

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

NOTE: Many of these organizations have also applied as separate mentoring organizations so they may not be under our umbrella for 2014. We're listing them here to help students find python projects, and we'll make sure it's clear which ones are under our umbrella and which ones are separate once mentoring organizations have been chosen by Google. Thanks for your patience!

Core Python

CPython and standard library

Website | | #python-dev on Freenode | Ideas Page


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

BinPy Logo


BinPy is an open source Python package to serve as a base to develop circuit based applications or logical games on top of it. This package does not depend on any external library other than pure Python.

Website | #binpy-soc on Freenode | | GSOC Ideas Page

GNU Mailman

Mailing list package written in Python

Website | | #mailman on Freenode | Ideas Page

Kivy Logo


Kivy is an open source Python framework for the rapid development of cross platform applications. Making use of Open GL ES 2.0 for it's UX fascilitating innovative user interfaces.

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


Mercurial is a free, distributed source control management tool. It efficiently handles projects of any size and offers an easy and intuitive interface.

Website | Mailing List | #mercurial on Freenode, see our IRC page | Ideas Page


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

Website | Mail List | Ideas Page

MoinMoin Wiki

MoinMoin Wiki is a popular wiki engine in Python. It runs THIS site. We're working on moin2 ("the next generation").

Wiki | Mailing List | Ideas Page



Python Library for Probabilistic Graphical Models

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


PyDy is a package for studying multibody dynamics with Python.

Website | Mailing List | GSoC Page | Ideas Page


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

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


Modern software build tool (Make replacement) written in Python

Website | | #scons on Freenode | Ideas Page


scikit-image is a collection of algorithms for image processing.

Website | Mailing List | Ideas Page


scikit-image is a Python module for machine learing.

Website | Mailing List | Ideas Page


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


Fast high-level screen scraping and web crawling framework

Website | | #scrapy on Freenode | Ideas Page


Python module for data analysis with statistical and econometric models

Website | mail list | Ideas Page


Python for Solar Physics

Website | | #sunpy on Freenode | Ideas Page


Supernova radiative transfer in Python

Website | | Ideas Page


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

Website | |Ideas Page


High-performance interactive visualization in Python

Website | | Ideas page


OpenHatch is a non-profit dedicated to matching prospective free software contributors with communities, tools, and education.

Website | Mail List | Ideas Page

Friends of the PSF

SymPy been accepted as a separate mentoring organization, so you should apply to them directly if you'd like to work on one of their projects:


Python library for symbolic mathematics

Website | #sympy on Freenode | Mailing List | Application Template | Ideas Page

ilastik projects are hosted under the lmonade scientific software distribution mentoring organization.


ilastik is a simple, user-friendly tool for image classification and segmentation that aims to enable non-experts to apply machine learning algorithms to their image processing problems

Website | | #lmnd on Freenode | Ideas Page

Sage also hosts many Python/Cython projects.


Sage is a free open-source mathematics software system licensed under the GPL. It builds on top of many existing open-source packages: NumPy, SciPy, matplotlib, Sympy, Maxima, GAP, FLINT, R and many more. Access their combined power through a common, Python-based language or directly via interfaces or wrappers.

Website | | #sagemath on Freenode | Ideas Page

Where should I start?

A great many students email wondering where to start because they feel overwhelmed by all the info on this page, so here's a summary of what you should do next:

  1. Read through all the information on this page. We've tried to answer the most common questions and give you tips that will help increase your chances of success!

  2. Choose a Python sub-org (above)
  3. Look through their ideas page
  4. If one or more of their ideas appeal to you, join their mailing list/irc channel and start following their instructions to get you development environment set up. (If not, propose your own project or try another sub-org.)
  5. Start contributing!
    1. As you get set up, you may find parts of the documentation confusing. Suggesting fixes is a way to contribute!
    2. Many organizations have "easy" or "beginner-friendly" bugs you should try fixing to demonstrate that you're ready to work on a larger project.
    3. Help others! It shows what a great community member you can be.
  6. Remember, if you get stuck at any step, you should ask the mentors and developers for your sub-org. Their mailing lists and IRC channels are listed above.

Or, for the more visually-oriented, here's a diagram: larger version


SummerOfCode/2014 (last edited 2015-03-17 06:31:05 by TerriOda)

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