Context Navigation

Google's Summer of Code 2008

Django is a sponsoring organization for the ​2008 Google Summer of Code. (Read Google's page for more information on how the program works.) Django's SoC program is being run by Mark Choate (mark /at/ choategroup /dot/ com).

Mentors

If you're interesting in mentoring -- supervising a student in work on Django-related activities -- add your name and email here, or email Mark:

Placeholder - add your name here.

Students

Student applications open March 24 and end on March 31; ​sign up over at Google and be sure to list Django as the project you want to work with.

If you'd like to get started on your proposal early, we'll be looking for a few things. You'll need to have a concrete task in mind (some ideas are below) along with a solid idea of what will constitute "success" (you tell us). We'll want to know a bit about you -- links to previous work are great, if any. You'll also need to provide us with a rough schedule of milestones so your mentor can know if and when to nag you :)

Note that none of the ideas below are good enough to be submissions in their own right (so don't copy and paste)! We'll want to know not just what you want to do but how you plan to pull it off.

And don't feel limited to the ideas below -- if you've got a cool project you want to work on, we'll probably be able to find you a mentor. We plan on approving as many projects as we possibly can.

Note: we're looking for projects that add value to Django itself - not application/CMS projects that use Django.

Ideas

Here are some suggestions for projects students may want to propose (lazyweb: please add to this list!). This isn't by any means the be-all and end-all of ideas; please feel free to submit proposals for things not on this list.

Try to scope ideas/proposals to the 4-month timeline -- simply proposing to fix a ticket or two will probably result in your proposal being rejected in favor of a more ambitious one. The SOC does not cover activities other than coding, so certain ideas ("Write a more detailed tutorial" or "Create demonstration screencasts" or "Add a pony?") are not suitable for inclusion here.

On the other side, though, be sure to be concrete in your proposal. We'll want to know what your goals are, and how you plan to accomplish them.

In no particular order:

Work on a database backend for some database not yet supported by Django -- MSSQL, Firebird, DB2, etc. In most of these cases work has already begun (FIXME: add some links), so this project would involve a fair amount of interaction with an existing development team. Along the way you'd need to fix any bugs in Django itself that prevent use with said backend.

Improve static page support in the built-in webserver. Make it useful for testing sites that may include CSS.

Make a set of sub-classes from models.Model to cover common website design patterns. Lots of design questions here, success would hinge on making a good choice of what design patterns to implement (things like User come to mind) and implementing them in such a way as to be as useful as possible to as many people as possible.