Differences between revisions 39 and 79 (spanning 40 versions)
Revision 39 as of 2015-03-06 17:33:19
Size: 18861
Editor: TerriOda
Comment: Adding scrapinghub
Revision 79 as of 2016-02-02 16:17:32
Size: 30018
Editor: EzioMelotti
Comment: Remove defunct IRC channel.
Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
{{https://www.python.org/static/community_logos/python-powered-h-140x182.png|Python Powered Logo}}
Line 2: Line 4:
Line 5: Line 6:
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), and Kushal Das (kushal on IRC).
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)
Line 14: Line 15:
Line 16: Line 16:
  * The [[http://en.flossmanuals.net/GSoCStudentGuide/|GSoC Student Guide]], which includes a lot of really useful information and tips for prospective GSoC students, including a page on [[http://en.flossmanuals.net/GSoCStudentGuide/ch006_making-first-contact/|making first contact with prospective mentors]].
  * The Python GSoC FAQ: SummerOfCode/FrequentlyAskedQuestions
  * The [[http://en.flossmanuals.net/GSoCStudentGuide/|GSoC Student Guide]], which includes a lot of really useful information and tips for prospective GSoC students, including a page on [[http://en.flossmanuals.net/GSoCStudentGuide/ch006_making-first-contact/|making first contact with prospective mentors]].

* The Python GSoC FAQ: SummerOfCode/FrequentlyAskedQuestions
Line 19: Line 21:
   * This mailing list is open to students, mentors and other interested community members
    * This is your first place to ask questions related to summer of code with Python!
 * IRC: '''#python-gsoc on irc.freenode.net'''.      * If you don't have an IRC client set up, you can [[http://webchat.freenode.net/?nick=gsoc_....&channels=python-gsoc|use this link to open a web chat client]] 
 * Org admins:     * 99.9% of the time, students should email soc2015-general@python.org with questions (it reaches more people so you get an answer faster)
   * Mentors and sub-org admins can email Terri, Meflin and Florian all at once using the mail alias soc2015-general-owner(at)python.org to get more information about the program and get signed up.
  * This mailing list is open to students, mentors and other interested community members
  * This is your first place to ask questions related to summer of code with Python!

 * IRC: '''#python-gsoc on irc.freenode.net'''.
* If you don't have an IRC client set up, you can [[http://webchat.freenode.net/?nick=gsoc_....&channels=python-gsoc|use this link to open a web chat client]]

 * Org admins:
* 99.9% of the time, students should email soc2015-general@python.org with questions (it reaches more people so you get an answer faster)

* Mentors and sub-org admins can email all the Python org admins all at once using the mail alias soc2015-general-owner(at)python.org to get more information about the program and get signed up.
Line 29: Line 34:
= 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 [[http://www.timeanddate.com/worldclock/fixedtime.html?msg=GSoC+Application+Deadline&iso=20150327T19&p1=1440|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.

{{{#!wiki caution
Only applications submitted in Google melange before [[http://www.timeanddate.com/worldclock/fixedtime.html?msg=GSoC+Application+Deadline&iso=20150327T19&p1=1440|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.
}}}
Line 30: Line 64:

Please note the [[http://www.google-melange.com/gsoc/events/google/gsoc2015|Dates and deadlines for 2015]]. We won't know if Python is a GSoC 2015 mentoring org until March 2nd. You can expect a reasonable number of GSoC ideas linked from this page by February 20th (the org application deadline), and list of Python sub-orgs around March 17th.
Please note the [[http://www.google-melange.com/gsoc/events/google/gsoc2015|Dates and deadlines for 2015]]. There should be a complete list of Python sub-orgs around March 17th.
Line 34: Line 67:
All prospective students are required to have completed the following to pass final screening:

 * Demonstrate to your prospective mentor(s) that you are able to complete the project you've proposed
 * Blog for their GSoC project. You'll be required to do this every 2 weeks throughout the GSoC period, because it helps us share your progress with the broader community, and it also helps the org admins get a sense of how you're doing.
 * Contribute at least one patch to the project(s) you're applying to work with
Line 36: Line 75:
 1. '''Choose an organization to work with.''' Python has a lot of sub-projects (over 20 in 2014!), so this can be hard. See "[[https://wiki.python.org/moin/SummerOfCode/FAQ#How_do_I_choose_a_project_or_a_sub-org.3F|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"
 1. '''Choose an organization to work with.''' Python has a lot of sub-projects (over 20 in 2014!), so this can be hard. See "[[https://wiki.python.org/moin/SummerOfCode/FrequentlyAskedQuestions#How_do_I_choose_a_project_or_a_sub-org.3F|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!

 1
. '''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.

 1
. '''Set up your own development environment.'''

 1
. '''Find some beginner-friendly bugs and try to fix them.''' Many projects have these tagged as "easy" "bite-size" or "beginner-friendly"
Line 43: Line 85:
  * 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 [[https://wiki.python.org/moin/SummerOfCode/2014|the list of organizations who participated in 2014]] or [[https://wiki.python.org/moin/SummerOfCode|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 2015. They can reach all the org admins at the following email alias: soc2015-general-owner(at)python.org

More information about writing your application will be available here closer to the start of the student application period.
  * Some projects have beginner-friendly "bite-sized" bugs listed in the !OpenHatch search engine, found here: http://openhatch.org/search/

 1
. '''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.

 1
. '''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!

 1
. '''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 [[https://wiki.python.org/moin/SummerOfCode/2014|the list of organizations who participated in 2014]] or [[https://wiki.python.org/moin/SummerOfCode|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:
Line 53: Line 98:
Line 55: Line 101:
 * Students should read [[SummerOfCode/Expectations]] to understand what is expected of accepted students.
Line 57: Line 104:
Interested in mentoring?   Interested in mentoring?
Line 61: Line 108:
To get signed up as an offical mentor, contact your sub-org admin. 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.)
Line 66: Line 115:
Line 70: Line 118:
Line 71: Line 120:
 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.) 

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.
 1. You need at least 3 mentors (a sub-org admin plus 2 more) signed up for the whole summer.
 1. 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.
Line 79: Line 128:

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 [[https://wiki.python.org/moin/SummerOfCode/2014|last year's page]] to find projects that might participate again.) We expect the 2015 page to be complete around March 7th. (Why March 7th? Google makes their decisions about mentoring orgs on March 2nd, and usually some of the ones who were too small will join us after that date.)
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 [[https://wiki.python.org/moin/SummerOfCode/2014|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.
Line 83: Line 131:


||<style="text-align:center" |3> {{http://nipy.org/dipy/_static/dipy-banner.png||width=240}} ||<style="color:#366D9C;font-size:140%;font-weight:bold;">Dipy ||
||<tablewidth="100%" tablestyle="border:1px solid #000; "style="text-align:center" |3> {{http://python.org/images/python-logo.gif}} ||<style="color:#366D9C;font-size:140%;font-weight:bold;">Core Python ||
||CPython, its standard library, and its infrastructure. ||
||<style="text-align:center">[[http://python.org/|Website]] | [[http://pythonmentors.com/|core-mentorship@python.org]] | [[http://webchat.freenode.net/?channels=python-dev|#python-dev]] on [[http://www.freenode.net/|Freenode]] | [[http://wiki.python.org/moin/SummerOfCode/2015/python-core|Ideas Page (Updated!)]] ||
||<style="text-align:center" |3> {{http://www.mpia.de/~robitaille/astropy/astropy_gsoc_logo.png}} ||<style="color:#366D9C;font-size:140%;font-weight:bold;">Astropy ||
||The Astropy Project oversees the development of a core package for Astronomy in Python, and fosters interoperability between Python Astronomy packages ||
||<style="text-align:center">[[http://www.astropy.org/|Website]] | [[https://groups.google.com/forum/#!forum/astropy-dev|Mailing List]] | [[http://webchat.freenode.net/?channels=astropy|#astropy]] on [[http://www.freenode.net/|Freenode]] | [[https://github.com/astropy/astropy/wiki/Google-Summer-of-Code-2015-Project-Ideas|Ideas Page]] ||
||<style="text-align:center" |3> {{https://farm8.staticflickr.com/7587/17066220246_e184b0fa0b_m.jpg||width="240"}} ||<style="color:#366D9C;font-size:140%;font-weight:bold;">Dipy ||
Line 87: Line 139:
||<style="text-align:center">[[http://nipy.org/dipy/|Website]] | [[ http://mail.scipy.org/mailman/listinfo/nipy-devel|Mailing list]] |[[https://github.com/nipy/dipy/wiki/Google-Summer-of-Code-2015|Ideas Page]] || ||<style="text-align:center">[[http://nipy.org/dipy/|Website]] | [[http://mail.scipy.org/mailman/listinfo/nipy-devel|Mailing list]] |[[https://github.com/nipy/dipy/wiki/Google-Summer-of-Code-2015|Ideas Page]] ||
||<style="text-align:center" |3> {{http://www.gns3.com/images/gns3_logo.png|Logo}} ||<style="color:#366D9C;font-size:140%;font-weight:bold;">GNS3 ||
|| GNS3 simulates complex networks while being as close as possible to the way real, physical networks perform. ||
||<style="text-align:center">[[http://www.gns3.com|Website]] | [[http://webchat.freenode.net/?channels=gns3|#gns3]] on [[http://www.freenode.net/|Freenode]] | [[https://community.gns3.com/community/connect/community-blog/blog/2015/02/11/gns3-google-summer-of-code|GSOC Ideas Page]] ||
||<style="text-align:center" |3> {{http://erasproject.org/wp-content/uploads/2015/03/BothLogo-e1425677433130.jpg|ERAS Logo}} ||<style="color:#366D9C;font-size:140%;font-weight:bold;">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. ||
||<style="text-align:center">[[http://erasproject.org|Website]] | [[mailto:erasproject@googlegroups.com|Mailing List]] | [[http://erasproject.org/2015-gsoc/|GSOC Ideas Page]] ||
||<style="text-align:center" |3> {{http://www.jython.org/css/jython.png|Jython Logo}} ||<style="color:#366D9C;font-size:140%;font-weight:bold;"> Jython ||
|| Jython is Python for the Java platform ||
||<style="text-align:center">[[http://www.jython.org/|Website]] | [[http://webchat.freenode.net/?channels= jython |#jython]] on [[http://www.freenode.net/|Freenode]] |[[http://sourceforge.net/p/jython/mailman/jython-dev/|Mailing List]] | [[https://github.com/jythontools/gsoc2015|GSOC Ideas Page]] ||
Line 90: Line 151:
||<style="text-align:center">[[http://kivy.org/|Website]] | [[http://webchat.freenode.net/?channels=kivy|#kivy]] on [[http://www.freenode.net/|Freenode]] | [[javascript:void(0);/*1392154041427*/|wiki]] |[[https://groups.google.com/forum/#!forum/kivy-users|kivy-users Google Group]] | [[http://kivy.org/docs/gsoc.html|GSOC Ideas Page]] ||
||<style="text-align:center" |3> {{http://martinos.org/mne/stable/_static/mne_logo.png||width=240}} ||<style="color:#366D9C;font-size:140%;font-weight:bold;">MNE-Python ||
||<style="text-align:center">[[http://kivy.org/|Website]] | [[http://webchat.freenode.net/?channels=kivy|#kivy]] on [[http://www.freenode.net/|Freenode]] |[[https://groups.google.com/forum/#!forum/kivy-users|kivy-users Google Group]] | [[http://kivy.org/docs/gsoc.html|GSOC Ideas Page]] ||
||<style="text-align:center" |3> {{http://martinos.org/mne/stable/_static/mne_logo.png||width="240"}} ||<style="color:#366D9C;font-size:140%;font-weight:bold;">MNE-Python ||
Line 96: Line 157:
||<style="text-align:center">[[https://moinmo.in/|Wiki]] | [[https://moinmo.in/MoinMoinMailingLists|Mailing List]] | [[https://moinmo.in/GoogleSoc2015/InitialProjectIdeas|Ideas Page]] | [[https://moinmo.in/GoogleSoc2015|MoinMoin GSoC main page]]||
||<style="text-align:center" |3> NetworkX ||<style="color:#366D9C;font-size:140%;font-weight:bold;">NetworkX ||
||NetworkX is a software package for the creation, manipulation, and study of the structure, dynamics, and function of complex networks.||
||<style="text-align:center">[[https://networkx.github.io/|Home Page]] | [[https://groups.google.com/forum/#!forum/networkx-discuss|Mailing List]] | [[https://github.com/networkx/networkx/wiki/GSoC-2015|Ideas Page]]||
||<style="text-align:center" |3> {{http://pgmpy.org/_images/logo.png||width=240}} ||<style="color:#366D9C;font-size:140%;font-weight:bold;">pgmpy ||
||<style="text-align:center">[[https://moinmo.in/|Wiki]] | [[https://moinmo.in/MoinMoinMailingLists|Mailing List]] | [[https://moinmo.in/GoogleSoc2015/InitialProjectIdeas|Ideas Page]] | [[https://moinmo.in/GoogleSoc2015|MoinMoin GSoC main page]] ||
||<style="text-align:center" |3> {{http://old.myhdl.org/lib/exe/fetch.php/myhdl_logo_128.png?cache=&w=128&h=91}} ||<style="color:#366D9C;font-size:140%;font-weight:bold;">MyHDL ||
||hardware description with Python ||
||<style="text-align:center">[[http://www.myhdl.org|Website]] | [[http://www.myhdl.org/support/community.html|Mail List]] | [[http://webchat.freenode.net/?channels=myhdl|#myhdl]] on [[http://www.freenode.net/|Freenode]] | [[http://dev.myhdl.org/gsoc/gsoc_2015.html|Ideas Page]] ||
||<style="text-align:center" |3>NetworkX ||<style="color:#366D9C;font-size:140%;font-weight:bold;">NetworkX ||
||NetworkX is a software package for the creation, manipulation, and study of the structure, dynamics, and function of complex networks. ||
||<style="text-align:center">[[https://networkx.github.io/|Home Page]] | [[https://groups.google.com/forum/#!forum/networkx-discuss|Mailing List]] | [[https://github.com/networkx/networkx/wiki/GSoC-2015|Ideas Page]] ||
||<style="text-align:center" |3> {{https://avatars1.githubusercontent.com/u/1424964?v=3&s=200|Qtile Logo}} ||<style="color:#366D9C;font-size:140%;font-weight:bold;">Qtile ||
||A tiling window manager written in python ||
||<style="text-align:center">[[http://qtile.org|Website]] | #qtile on oftc |[[https://groups.google.com/forum/#!forum/qtile-dev|Mailing List]] | [[https://github.com/qtile/qtile/wiki/GSoC-2015-project-ideas|GSOC Ideas Page]] ||
||<style="text-align:center" |3> {{http://pgmpy.org/_images/logo.png||width="240"}} ||<style="color:#366D9C;font-size:140%;font-weight:bold;">pgmpy ||
Line 103: Line 170:
||<style="text-align:center" |3> {{https://cloud.githubusercontent.com/assets/276007/6099565/a4268f1e-afb0-11e4-8cd4-e6a8eb398288.png||width=200}} ||<style="color:#366D9C;font-size:140%;font-weight:bold;">PyDy ||
|| Multibody Dynamics with Python ||
||<style="text-align:center" |3> {{https://plone.org/logo@2x.png||width="240"}} ||<style="color:#366D9C;font-size:140%;font-weight:bold;">Plone Foundation ||
|| Plone is a Python-based web content management system, first released in 2001 ||
||<style="text-align:center">[[https://plone.org/|Website]] | [[http://webchat.freenode.net/?channels=plone|#plone]] on [[http://www.freenode.net/|Freenode]] |[[https://lists.sourceforge.net/lists/listinfo/plone-developers|Mailing List]] | [[https://plone.org/events/summer-of-code/2015/ideas-list|GSOC Ideas Page]] ||
||<style="text-align:center" |3> {{https://avatars2.githubusercontent.com/u/6656233?v=3&s=100}} ||<style="color:#366D9C;font-size:140%;font-weight:bold;">pwntools / binjitsu ||
||CTF framework and exploit development library ||
||<style="text-align:center">[[https://github.com/binjitsu/|Website]] | [[https://groups.google.com/forum/#!forum/pwntools-gsoc2015|Mailing List]] | [[http://webchat.freenode.net/?channels=pwntools|#pwntools]] on [[http://www.freenode.net/|Freenode]] | [[https://github.com/binjitsu/gsoc/blob/master/README.md|Ideas Page]] ||
||<style="text-align:center" |3> {{https://cloud.githubusercontent.com/assets/276007/6099565/a4268f1e-afb0-11e4-8cd4-e6a8eb398288.png||width="200"}} ||<style="color:#366D9C;font-size:140%;font-weight:bold;">!PyDy ||
||Multibody Dynamics with Python ||
Line 106: Line 179:
||<style="text-align:center" |3> {{http://scikit-image.org/_static/img/logo.png||width=240}} ||<style="color:#366D9C;font-size:140%;font-weight:bold;">scikit-image || ||<style="text-align:center" |3> {{http://pypy.org/image/pypy-logo.png}} ||<style="color:#366D9C;font-size:140%;font-weight:bold;">PyPy ||
||PyPy is a fast, compliant alternative implementation of the Python language (2.7.3). ||
||<style="text-align:center">[[http://pypy.org/|Website]] | #pypy on IRC | [[http://mail.python.org/mailman/listinfo/pypy-dev|Mail List]] | [[http://doc.pypy.org/en/latest/project-ideas.html|Ideas Page]] ||
||<style="text-align:center" |3> {{http://scikit-image.org/_static/img/logo.png||width="240"}} ||<style="color:#366D9C;font-size:140%;font-weight:bold;">scikit-image ||
Line 109: Line 185:
||<style="text-align:center" |3> {{https://raw.githubusercontent.com/scikit-learn/scikit-learn/master/doc/logos/scikit-learn-logo.png|Logo}} ||<style="color:#366D9C;font-size:140%;font-weight:bold;">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. ||
||<style="text-align:center">[[http://scikit-learn.org/dev/|Website]] | [[http://webchat.freenode.net/?channels=scikit-learn|#scikit-learn]] on [[http://www.freenode.net/|Freenode]] |[[https://lists.sourceforge.net/lists/listinfo/scikit-learn-general|Mailing List]] | [[https://github.com/scikit-learn/scikit-learn/wiki/Google-summer-of-code-%28GSOC%29-2015|GSOC Ideas Page]] ||
Line 112: Line 191:
||<style="text-align:center" |3> {{https://s3.amazonaws.com/uploads.hipchat.com/19745/1178307/k7gAK1gzIfqsyKR/shub-logo.jpg||width=240}} ||<style="color:#366D9C;font-size:140%;font-weight:bold;">Scrapinghub || ||<style="text-align:center" |3> {{http://scrapinghub.com/images/shub-standard-logo.png||width="240"}} ||<style="color:#366D9C;font-size:140%;font-weight:bold;">Scrapinghub ||
Line 114: Line 193:
||<style="text-align:center">[[http://scrapinghub.com/|Website]] | [[http://gsoc2015.scrapinghub.com/|Ideas Page]] ||
||<style="text-align:center" |3> {{http://www.sympy.org/media/logo.png||width=240}} ||<style="color:#366D9C;font-size:140%;font-weight:bold;">SymPy ||
|| Symbolic mathematics (computer algebra system) ||
||<style="text-align:center">[[http://scrapinghub.com/|Website]] | [[http://gsoc2015.scrapinghub.com/participate/|Mailing Lists]] | [[http://gsoc2015.scrapinghub.com/|Ideas Page]] | [[http://gsoc2015.scrapinghub.com/guidelines/|Guidelines]] ||
||<style="text-align:center" |3> {{http://statsmodels.sourceforge.net/devel/_static/statsmodels_hybi_banner.png||width="240"}} ||<style="color:#366D9C;font-size:140%;font-weight:bold;">statsmodels ||
||Python module for data analysis with statistical and econometric models ||
||<style="text-align:center">[[http://statsmodels.sourceforge.net/|Website]] | [[https://groups.google.com/group/pystatsmodels|mail list]] | [[https://github.com/statsmodels/statsmodels/wiki/Google-Summer-of-Code-2015|Ideas Page]] ||
||<style="text-align:center" |3> {{https://farm9.staticflickr.com/8365/8599916733_1139445065_m.jpg}} ||<style="color:#366D9C;font-size:140%;font-weight:bold;">!SunPy ||
||Python for Solar Physics ||
||<style="text-align:center">[[http://www.sunpy.org|Website]] | [[https://groups.google.com/d/forum/sunpy-dev|sunpy-dev@googlegroups.com]] | [[http://webchat.freenode.net/?channels=sunpy|#sunpy]] on [[http://www.freenode.net/|Freenode]] | [[https://github.com/sunpy/sunpy/wiki/GSoC-2015-Ideas-Page|Ideas Page]] ||
||<style="text-align:center" |3> {{http://www.sympy.org/media/logo.png||width="240"}} ||<style="color:#366D9C;font-size:140%;font-weight:bold;">SymPy ||
||Symbolic mathematics (computer algebra system) ||
Line 121: Line 206:
||<style="text-align:center" |3> {{http://vispy.org/_static/img/logo.png||width=240}} ||<style="color:#366D9C;font-size:140%;font-weight:bold;">Vispy || ||<style="text-align:center" |3> {{http://vispy.org/_static/img/logo.png||width="240"}} ||<style="color:#366D9C;font-size:140%;font-weight:bold;">Vispy ||
Line 125: Line 210:


Line 126: Line 214:
Line 128: Line 215:
Line 131: Line 217:
||<style="text-align:center">[[http://list.org/|Website]] | [[http://mail.python.org/mailman/listinfo/mailman-developers|mailman-developers@python.org]] | #mailman on [[http://www.freenode.net/|Freenode]] | [[http://wiki.list.org/DEV/Google_Summer_of_Code_2015|Ideas Page]] || ||<style="text-align:center">[[http://list.org/|Website]] | [[http://mail.python.org/mailman/listinfo/mailman-developers|mailman-developers@python.org]] | [http://webchat.freenode.net/?channels=mailman|#mailman]] on [[http://www.freenode.net/|Freenode]] | [[http://wiki.list.org/DEV/Google_Summer_of_Code_2015|Ideas Page]] ||
Line 136: Line 222:


Line 137: Line 226:
Line 140: Line 228:
Of note: Of note (All deadlines 1900UTC):
Line 142: Line 231:
 * Mar 16: Deadline for new organizations wanting to be under the Python umbrella to have their mentors and ideas pages ready (Please contact TerriOda.) **  * Mar 16: Deadline for new organizations wanting to be under the Python umbrella to have their mentors and ideas pages ready (Late orgs ''may'' be considered if you have an incredibly amazing student applicant. Please contact TerriOda. ) **
Line 144: Line 234:
 * Apr 18: Python sub-orgs need to get their student picks to TerriOda **  * Apr 11: Python sub-orgs need to tell TerriOda how many slots they would like (Include min/max numbers. She will request 2 on your behalf if you don't specify before this date) **
 * Apr 17: Python sub-orgs need to get their student picks to TerriOda (Do this only after March 27th when you have reviewed all applicants) **
 * Apr 21: De-duplication starts. TerriOda will contact you if a student you want is affected.
Line 157: Line 249:
Line 159: Line 250:
 * The main GSoC website is [[http://www.google-melange.com/gsoc/homepage/google/gsoc2015]].
* The main GSoC website is http://www.google-melange.com/gsoc/homepage/google/gsoc2015.
Line 161: Line 254:

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:

  • Demonstrate to your prospective mentor(s) that you are able to complete the project you've proposed
  • Blog for their GSoC project. You'll be required to do this every 2 weeks throughout the GSoC period, because it helps us share your progress with the broader community, and it also helps the org admins get a sense of how you're doing.
  • Contribute at least one patch to the project(s) you're applying to work with

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):

  • Feb 20: Mentoring organization application deadline. (There should be a decent number of ideas on this page by then.)
  • Mar 16: Deadline for new organizations wanting to be under the Python umbrella to have their mentors and ideas pages ready (Late orgs may be considered if you have an incredibly amazing student applicant. Please contact TerriOda. ) **

  • Mar 27: Student application deadline.
  • Apr 11: Python sub-orgs need to tell TerriOda how many slots they would like (Include min/max numbers. She will request 2 on your behalf if you don't specify before this date) **

  • Apr 17: Python sub-orgs need to get their student picks to TerriOda (Do this only after March 27th when you have reviewed all applicants) **

  • Apr 21: De-duplication starts. TerriOda will contact you if a student you want is affected.

  • Apr 27: Accepted student proposals announced on the Google Summer of Code 2015 site.
  • May 25: Students begin coding.
  • Jul 1: Midterm evaluations due to Python **
  • Jul 3: Midterms evaluations due to Google
  • Aug 26: Final evaluations due to Python **
  • Aug 28: Final evaluations due to Google

** 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.