Differences between revisions 29 and 58 (spanning 29 versions)
Revision 29 as of 2009-03-20 11:50:29
Size: 7984
Editor: 70
Comment: Added Stackless Python
Revision 58 as of 2009-04-02 03:46:23
Size: 15067
Editor: 97-118-92-201
Comment: add the five best tahoe projects from the Tahoe GSoCIdeas page
Deletions are marked like this. Additions are marked like this.
Line 16: Line 16:
'''Note:''' This list of project ideas is still in the process of being built.  We hope to have a more-or-less complete set of ideas by Friday, March 20th, 2009. '''Note:''' This list of project ideas is still being expanded; check back regularly!
Line 18: Line 18:
||<tablestyle="border: 1px solid #000; width:100%;">'''Summary'''||'''Useful skills and experience'''||'''Mentor'''|| ||<tablestyle="border: 1px solid #000; width:100%;">'''Summary'''||'''Useful skills and experience'''||'''Contact'''||
Line 20: Line 20:
||<style="border-bottom:1px dotted #000;"> Improve the 2to3 tool for better Python 3 migration ||<style="border-bottom:1px dotted #000;"> Python, Python3 ||<style="border-bottom:1px dotted #000;"> BenjaminPeterson || ||<style="border-bottom:1px dotted #000;"> Improve the [[2to3]] tool for better Python 3 migration ||<style="border-bottom:1px dotted #000;"> Python, Python3 ||<style="border-bottom:1px dotted #000;"> BenjaminPeterson ||
Line 22: Line 22:
||<style="border-bottom:1px dotted #000;"> Extend subprocess module ||<style="border-bottom:1px dotted #000;"> Python ||<style="border-bottom:1px dotted #000;"> TitusBrown ||
||<style="border-bottom:1px dotted #000;"> Provide nose wrapper for core Python test framework ||<style="border-bottom:1px dotted #000;"> Python ||<style="border-bottom:1px dotted #000;"> TitusBrown ||
||<style="border-bottom:1px dotted #000;"> Improve C and Python test coverage for core ||<style="border-bottom:1px dotted #000;"> C, Python ||<style="border-bottom:1px dotted #000;"> TitusBrown ||
||<style="border-bottom:1px dotted #000;"> Implement branch coverage recording for CPython ||<style="border-bottom:1px dotted #000;"> C, Python ||<style="border-bottom:1px dotted #000;"> TitusBrown ||
||<style="border-bottom:1px dotted #000;"> Helper Python core development tools ||<style="border-bottom:1px dotted #000;"> Python, dev tools ||<style="border-bottom:1px dotted #000;"> [[mailto:aafshar@gmail.com|Ali Afshar]], DanielDiniz ||
Line 23: Line 28:
||<style="border-bottom:1px dotted #000;"> [[http://lists.idyll.org/pipermail/testing-in-python/2009-March/001277.html|Buildbot replacement]] ||<style="border-bottom:1px dotted #000;"> Python, Buildbot ||<style="border-bottom:1px dotted #000;"> TitusBrown ||
||<style="border-bottom:1px dotted #000;"> Distutils test framework using PYPI. See [[http://tarekziade.wordpress.com/2009/02/08/a-distutils-regression-test-system/|this page]] ||<style="border-bottom:1px dotted #000;"> Python, Buildbot ||<style="border-bottom:1px dotted #000;"> [[mailto:ziade.tarek@gmail.com|Tarek Ziadé]] ||
||<style="border-bottom:1px dotted #000;"> Build a keyring library for Python. See [[http://tarekziade.wordpress.com/2009/03/27/pycon-hallway-session-1-a-keyring-library-for-python/|this page]] ||<style="border-bottom:1px dotted #000;"> Python ||<style="border-bottom:1px dotted #000;"> [[mailto:ziade.tarek@gmail.com|Tarek Ziadé]] ||
Line 26: Line 34:
||<style="border-bottom:1px dotted #000;"> [[http://codespeak.net/pypy|PyPy]] also has a list of [[http://codespeak.net/pypy/trunk/pypy/doc/project-ideas.txt|potential projects]]||<style="border-bottom:1px dotted #000;"> Python ||<style="border-bottom:1px dotted #000;"> [[mailto:pypy-dev@codespeak.net|the PyPy team]] ||
||<style="border-bottom:1px dotted #000;"> [[http://www.roundup-tracker.org/cgi-bin/moin.cgi/SummerOfCodeIdeas|Roundup]] / [[http://bugs.python.org|Python Tracker]] enhancements||<style="border-bottom:1px dotted #000;"> Python ||<style="border-bottom:1px dotted #000;"> [[https://lists.sourceforge.net/lists/listinfo/roundup-devel|Stefan Seefeld]], MartinvonLoewis, DanielDiniz ||
Line 28: Line 38:
||<style="border-bottom:1px dotted #000;"> Adapting [[http://rur-ple.sourceforge.net|RUR-PLE]] as a [[http://code.google.com/p/crunchy|Crunchy]] plugin ||<style="border-bottom:1px dotted #000;"> Python, javascript ||<style="border-bottom:1px dotted #000;"> [[mailto:andre.roberge@gmail.com|André Roberge]] ||
Line 31: Line 42:
||<style="border-bottom:1px dotted #000;"> [[http://www.pysoy.org/ticket/976|Programmable rendering models]] in [[http://www.pysoy.org/|PySoy]] ||<style="border-bottom:1px dotted #000;"> Python, C, OpenGL ||<style="border-bottom:1px dotted #000;"> ArcRiley ||
||<style="border-bottom:1px dotted #000;"> [[http://www.pysoy.org/ticket/977|Themeable widgets with inheritance]] in [[http://www.pysoy.org/|PySoy]] ||<style="border-bottom:1px dotted #000;"> Python, C, OpenGL ||<style="border-bottom:1px dotted #000;"> ArcRiley ||
Line 37: Line 50:
||||||<style="color:#366D9C;font-size:140%;font-weight:bold;border-bottom: 1px solid #000;border-top: 1px solid #000"> Networking ||
||<style="border-bottom:1px dotted #000;"> [[http://gajim.org/|Gajim]] propose some [[http://trac.gajim.org/wiki/GajimGSOC|ideas]].||<style="border-bottom:1px dotted #000;"> Python, XMPP ||<style="border-bottom:1px dotted #000;"> [[mailto:asterix@lagaule.org|Yann Leboulanger]] ||
||||||<style="color:#366D9C;font-size:140%;font-weight:bold;border-bottom: 1px solid #000;border-top: 1px solid #000"> Testing ||
||<style="border-bottom:1px dotted #000;"> Port figleaf to Python3 ||<style="border-bottom:1px dotted #000;"> Python3 ||<style="border-bottom:1px dotted #000;"> TitusBrown ||
||<style="border-bottom:1px dotted #000;"> Integrate C coverage reporting into figleaf ||<style="border-bottom:1px dotted #000;"> C, Python ||<style="border-bottom:1px dotted #000;"> TitusBrown ||
||<style="border-bottom:1px dotted #000;"> [[http://pythoscope.org/|Pythoscope]] enhancements ||<style="border-bottom:1px dotted #000;"> Python, unit testing, code generation ||<style="border-bottom:1px dotted #000;"> [[mailto:constant.beta@gmail.com|Michał Kwiatkowski]] ||
Line 38: Line 57:
||<style="border-bottom:1px dotted #000;"> Build suite of migration tools to help people move projects between forges like SourceForge, Google Code, Trac, etc. ||<style="border-bottom:1px dotted #000;"> Python, Trac/SF/GC ||<style="border-bottom:1px dotted #000;"> [[mailto:gvwilson@cs.toronto.edu|Greg Wilson]] ||
||<style="border-bottom:1px dotted #000;"> Extensions/performance improvements to [[http://plastex.sourceforge.net|Plastex]] (so we can finally retire Latex2Html) ||<style="border-bottom:1px dotted #000;"> Python, LaTeX ||<style="border-bottom:1px dotted #000;"> [[mailto:gvwilson@cs.toronto.edu|Greg Wilson]] ||
||<style="border-bottom:1px dotted #000;"> Distutils test framework using PYPI. See [[http://tarekziade.wordpress.com/2009/02/08/a-distutils-regression-test-system/|this page]] ||<style="border-bottom:1px dotted #000;"> Python, Buildbot ||<style="border-bottom:1px dotted #000;"> [[mailto:ziade.tarek@gmail.com|Tarek Ziadé]] ||
||<style="border-bottom:1px dotted #000;"> Build suite of migration tools to help people move projects between forges like DrProject, SourceForge, Google Code, Trac, etc. ||<style="border-bottom:1px dotted #000;"> Python, Trac/SF/GC ||<style="border-bottom:1px dotted #000;"> [[mailto:bwinton@latte.ca|Blake Winton]], [[mailto:gvwilson@cs.toronto.edu|Greg Wilson]], [[mailto:wolever@cs.toronto.edu|David Wolever]] ||
||<style="border-bottom:1px dotted #000;"> [[http://plastex.sourceforge.net|Plastex]] performance improvements and [[http://www.w3.org/Math/|MathML]] extensions (so we can finally retire Latex2Html) ||<style="border-bottom:1px dotted #000;"> Python, LaTeX ||<style="border-bottom:1px dotted #000;"> [[Kevin.Smith@sixquickrun.com|Kevin D. Smith]], [[mailto:gvwilson@cs.toronto.edu|Greg Wilson]] ||
||<style="border-bottom:1px dotted #000;"> Extend [[http://code.google.com/p/pysync/|Pysync]] version control abstraction library to work with more VCS's and provide write access as well as read||<style="border-bottom:1px dotted #000;"> Python, C, CVS/SVN/P4/Git/Hg/Bzr/etc. ||<style="border-bottom:1px dotted #000;"> [[mailto:ad@cs.toronto.edu|Aran Donohue]], [[mailto:cjmuise@cs.toronto.edu|Christian Muise]], [[mailto:gvwilson@cs.toronto.edu|Greg Wilson]] ||
||<style="border-bottom:1px dotted #000;"> Build Python into BOINC/GridRepublic ||<style="border-bottom:1px dotted #000;"> Python ||<style="border-bottom:1px dotted #000;"> TitusBrown ||
||<style="border-bottom:1px dotted #000;"> Work on [[http://pygr.org/|pygr]] ||<style="border-bottom:1px dotted #000;"> Python, bioinformatics ||<style="border-bottom:1px dotted #000;"> TitusBrown ||
||<style="border-bottom:1px dotted #000;"> [[http://allmydata.org/trac/tahoe/wiki/GSoCIdeas|Tahoe]]: implement the storage server protocol over HTTP -- [[http://allmydata.org/trac/tahoe/ticket/510|details]] ||<style="border-bottom:1px dotted #000;"> Python, networking, HTTP ||<style="border-bottom:1px dotted #000;"> TahoeMentors ||
||<style="border-bottom:1px dotted #000;"> [[http://allmydata.org/trac/tahoe/wiki/GSoCIdeas|Tahoe]]: FUSE integration -- [[http://allmydata.org/trac/tahoe/ticket/36|details]], [[http://allmydata.org/pipermail/tahoe-dev/2008-November/000885.html|more details]] ||<style="border-bottom:1px dotted #000;"> Python, filesystems, Linux kernel ||<style="border-bottom:1px dotted #000;"> TahoeMentors ||
||<style="border-bottom:1px dotted #000;"> [[http://allmydata.org/trac/tahoe/wiki/GSoCIdeas|Tahoe]]: visualization -- real-time and historical filesystem performance, and social network ||<style="border-bottom:1px dotted #000;"> Python, GUI ||<style="border-bottom:1px dotted #000;"> TahoeMentors ||
||<style="border-bottom:1px dotted #000;"> [[http://allmydata.org/trac/tahoe/wiki/GSoCIdeas|Tahoe]]: DVCS-on-Tahoe -- integrate a DVCS such as Mercurial to make an indestructible "repository in the clouds" ||<style="border-bottom:1px dotted #000;"> Python, DVCS ||<style="border-bottom:1px dotted #000;"> TahoeMentors ||
||<style="border-bottom:1px dotted #000;"> [[http://allmydata.org/trac/tahoe/wiki/GSoCIdeas|Tahoe]]: semi-private keys -- prove the security of a new form of public key cryptography, and implement it ||<style="border-bottom:1px dotted #000;"> Python, mathematics ||<style="border-bottom:1px dotted #000;"> TahoeMentors ||


Line 63: Line 92:
 * [[http://allmydata.org/trac/tahoe/wiki/GSoCIdeas|Tahoe LAFS]]

This page coordinates the Google Summer of Code projects involving Python and mentored by the Python Software Foundation (PSF) in 2009.

The 2009 PSF SoC coordinator is ArcRiley <arcriley@gmail.com>. Contact him if you have any questions.

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.

You should join the soc2009-general mailing list and take a look at the Project Ideas section below. If any interest you, feel free to contact the proposer for details. You can also discuss your own project ideas with the people mentioned or talk about them on the soc2009-general mailing list. Some of us also hang out on #gsoc-python on freenode.

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

Project Ideas

These are project ideas proposed by mentors grouped roughly on the type of work it entails. Use the provided links for each for more information and contact the mentors interested in it.

Note: This list of project ideas is still being expanded; check back regularly!

Summary

Useful skills and experience

Contact

Core Python

Improve the 2to3 tool for better Python 3 migration

Python, Python3

BenjaminPeterson

3to2 tool for backporting Py3 code

Python, Python3

BenjaminPeterson

Extend subprocess module

Python

TitusBrown

Provide nose wrapper for core Python test framework

Python

TitusBrown

Improve C and Python test coverage for core

C, Python

TitusBrown

Implement branch coverage recording for CPython

C, Python

TitusBrown

Helper Python core development tools

Python, dev tools

Ali Afshar, DanielDiniz

Development

Buildbot replacement

Python, Buildbot

TitusBrown

Distutils test framework using PYPI. See this page

Python, Buildbot

Tarek Ziadé

Build a keyring library for Python. See this page

Python

Tarek Ziadé

Cython has a list of potential projects

Python, C

CythonTeam

Sphinx has a list of potential projects as well -- contact #pocoo on freenode

Python, potentially HTML/JavaScript

GeorgBrandl

Stackless Python has a list of potential projects

Python, C, C++

Richard Tew

PyPy also has a list of potential projects

Python

the PyPy team

Roundup / Python Tracker enhancements

Python

Stefan Seefeld, MartinvonLoewis, DanielDiniz

Education

Porting Crunchy to Python 3.0

Python, Python3, WSGI

André Roberge

Adapting RUR-PLE as a Crunchy plugin

Python, javascript

André Roberge

Gaming

Accelerated soy.fields physics in PySoy

Python, C, liboil, ODE

EricStein

Character animation in PySoy using GLSL

Python, C, OpenGL, Quaternion math

BlaisePascal

Programmable rendering models in PySoy

Python, C, OpenGL

ArcRiley

Themeable widgets with inheritance in PySoy

Python, C, OpenGL

ArcRiley

PyGame has their own ideas page

Python, C (varied)

PyGame

MathSci

Extracting matplotlib's mathematical expression renderer a standalone project

Python

MplMentors

Adding an html5/canvas backend to matplotlib

Python, HTML5

MplMentors

NumPy and SciPy has a list of project ideas

Python

SciPy/NumPy team

SymPy has a list of project ideas

Python

SymPy team

Networking

Gajim propose some ideas.

Python, XMPP

Yann Leboulanger

Testing

Port figleaf to Python3

Python3

TitusBrown

Integrate C coverage reporting into figleaf

C, Python

TitusBrown

Pythoscope enhancements

Python, unit testing, code generation

Michał Kwiatkowski

Miscellaneous

Build suite of migration tools to help people move projects between forges like DrProject, SourceForge, Google Code, Trac, etc.

Python, Trac/SF/GC

Blake Winton, Greg Wilson, David Wolever

Plastex performance improvements and MathML extensions (so we can finally retire Latex2Html)

Python, LaTeX

Kevin D. Smith, Greg Wilson

Extend Pysync version control abstraction library to work with more VCS's and provide write access as well as read

Python, C, CVS/SVN/P4/Git/Hg/Bzr/etc.

Aran Donohue, Christian Muise, Greg Wilson

Build Python into BOINC/GridRepublic

Python

TitusBrown

Work on pygr

Python, bioinformatics

TitusBrown

Tahoe: implement the storage server protocol over HTTP -- details

Python, networking, HTTP

TahoeMentors

Tahoe: FUSE integration -- details, more details

Python, filesystems, Linux kernel

TahoeMentors

Tahoe: visualization -- real-time and historical filesystem performance, and social network

Python, GUI

TahoeMentors

Tahoe: DVCS-on-Tahoe -- integrate a DVCS such as Mercurial to make an indestructible "repository in the clouds"

Python, DVCS

TahoeMentors

Tahoe: semi-private keys -- prove the security of a new form of public key cryptography, and implement it

Python, mathematics

TahoeMentors

Mentor Instructions

We've setup /Incoming for mentors who find the above table intimidating to edit. You can still brave editing this page, just be careful.

Previous years

Related Organizations

SummerOfCode/2009 (last edited 2009-04-02 03:50:50 by 97-118-92-201)

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