Differences between revisions 4 and 10 (spanning 6 versions)
Revision 4 as of 2014-03-03 01:31:03
Size: 4269
Comment:
Revision 10 as of 2014-03-03 02:11:25
Size: 4496
Comment:
Deletions are marked like this. Additions are marked like this.
Line 19: Line 19:
Please also note the following deadlines:https://wiki.gnome.org/OutreachProgramForWomen/2014/MayAugust#Schedule Please also note the following deadlines:
Line 21: Line 21:
* '''until March 19''': join the community and make at least 1 contribution
* '''March 19''': application deadline at 7pm UTC
* '''April 21''': accepted participants announced at 7pm UTC
* '''May 19 - August 18''': internship period
 * '''until March 19''': join the community and make at least 1 contribution
 * '''March 19''': application deadline at 7pm UTC
 * '''April 21''': accepted participants announced at 7pm UTC
 * '''May 19 - August 18''': internship period
Line 28: Line 28:
1. Join the Python core mentorship mailing list and introduce yourself: https://mail.python.org/mailman/listinfo/core-mentorship.
2. Read the Python developer guide: http://docs.python.org/devguide/
3. Create an account on the Python bug tracker: http://bugs.python.org/
4. Submit a patch for a Python bug (see the next section for help getting started)
5. Let the core mentorship mailing list know that you've submitted your patch and are ready to work on your application. We'll craft an application together for a project that fits your background and interests and what you want to learn this summer!
 1. Join the Python core mentorship mailing list and introduce yourself: https://mail.python.org/mailman/listinfo/core-mentorship.
 1. Read the Python developer guide: http://docs.python.org/devguide/
 1. Create an account on the Python bug tracker: http://bugs.python.org/
 1. Submit a patch for a Python bug (see the next section for help getting started)
 1. Let the core mentorship mailing list know that you've submitted your patch and are ready to work on your application. We'll craft an application together for a project that fits your background and interests and what you want to learn this summer!
Line 34: Line 34:
= Preparing to apply = = Submitting a patch for a Python bug =
Line 36: Line 36:
Here are some of the tools we use: Before you can apply for an internship, you'll need to submit at least 1 patch to Python. The [[http://docs.python.org/devguide/|Python developer guide]] describes how to do this in detail, but here are the main steps:
Line 38: Line 38:
IRC
the Trac issue tracker
the svn revision control system
the diff and patch utilities
If you have not used IRC before, please go through this short tutorial on installing and using an IRC client: https://openhatch.org/wiki/Open_Source_Comes_to_Campus/UMD/Laptop_setup#Goal_.233:_install_an_IRC_client
 1. Get the Python source code
 1. Run the Python tests
 1. Pick a bug from http://bugs.python.org/ to work on. If you'd like suggestions, ask on the [[https://mail.python.org/mailman/listinfo/core-mentorship|Core mentorship mailing list]]
 1. [[http://docs.python.org/devguide/patch.html|Create a patch addressing the bug]]
 1. Run the Python tests with your patch applied to make sure they all still pass
 1. Attach your patch to the bug description in the bug tracker
 1. Tell the Core mentorship list that you've submitted your patch, so we can ensure that it gets reviewed and can start working on your application
Line 44: Line 46:
Please familiarize yourself with how Twisted uses Trac by exploring the reports from this link: http://twistedmatrix.com/trac/report == The tools of Python development ==
Line 46: Line 48:
With sufficient exploration you should be able to answer the following questions (you don't have to tell me the answers, just make sure you know how to find them): Before you submit a patch, here are some of the tools we use that you may want to review or practice:
Line 48: Line 50:
What is the oldest open Twisted ticket?
How many tickets are currently waiting on review? How do we denote tickets waiting on a review (hint: look at the keyword)
Using the custom query page at http://twistedmatrix.com/trac/query, find out how many open tickets we have that have the "documentation" keyword.
If you have not used svn before, please go through the svn training mission at: http://openhatch.org/missions/svn
 * IRC
 * bug trackers
 * the mercurial (hg) revision control system
 * the diff and patch utilities
Line 53: Line 55:
If you have not used diff and patch before, please go through the diff and patch training mission at: http://openhatch.org/missions/diffpatch === IRC ===
Line 55: Line 57:
If you have any questions while going through this material, don't hesitate to ask for help in #twisted on IRC or on the twisted-python mailing list. IRC is a real-time group chat system popular with many open source projects. Developers ask questions and discuss patches on IRC, and users also ask questions on IRC.
Line 57: Line 59:
Once you've gone through this material, the next steps will be to: Learn more about how Python uses IRC here: http://www.python.org/community/irc/.
Line 59: Line 61:
Meet up on IRC (stop by the #twisted channel)
Check out and explore the Twisted source code
Read a few parts of the Twisted core documentation and run some example Twisted scripts
Run the Twisted test suite - cd into the checkout folder and run "bin/trial twisted".
And then you'll be in great shape to start working on your first Twisted ticket. We'll suggest a first ticket when you get in touch over email; you'd want to fix it in your Twisted svn checkout, run svn diff, upload the resulting patch to the ticket and then add the "review" keyword to the ticket. This process is described in detail here: http://twistedmatrix.com/trac/wiki/TwistedDevelopment#SubmittingaPatch
There are 3 main Python IRC channels, all on the Freenode IRC network, that you may be interested in:

 1. `#python-dev`: for discussing the development of Python itself
 1. `#python`: for asking and answering general Python questions
 1. `#pyladies`: the main !PyLadies IRC channel


=== Bug trackers ===

Python tracks bugs and features at http://bugs.python.org/.

Please familiarize yourself with how Python uses its bug tracker by exploring and finding answers to the following questions:

 1. What is the oldest open Python ticket?
 1. How many open issues need a patch?
 1. How many "critical"-level open issues are there?

=== Mercurial ===

Mercurial is the distributed version control system Python uses to manages changes to its code.

If you have not used Mercurial before, please go through this tutorial: http://hginit.com/

=== diff and patch ===

If you have not used diff and patch before, please go through the diff and patch training mission at:

http://openhatch.org/missions/diffpatch

Join Python this summer!

This page coordinates the Python projects for the Summer 2014 session of the GNOME Outreach Program For Women.

What: Earn a $5500 USD stipend while contributing to the CPython language interpreter and related core packages.
When: This is a full-time summer internship lasting from May 19 - August 18.
Where: Anywhere! This is remote internship, with most communication happening on mailing lists, bug trackers, and IRC.
Who: This internship is open to anyone who identifies as a woman. Note that unlike Google Summer of Code, you do not need to be a student.

Applications are due by March 19th.


Prospective Applicants

If you are a woman interested in a paid summer internship doing core Python development, we'd love to have you apply to work with us in this summer's GNOME Outreach Program for Women!

Please read carefully through https://wiki.gnome.org/OutreachProgramForWomen for the full details on how the GNOME Outreach Program for Women works.

Please also note the following deadlines:

  • until March 19: join the community and make at least 1 contribution

  • March 19: application deadline at 7pm UTC

  • April 21: accepted participants announced at 7pm UTC

  • May 19 - August 18: internship period

How to apply

  1. Join the Python core mentorship mailing list and introduce yourself: https://mail.python.org/mailman/listinfo/core-mentorship.

  2. Read the Python developer guide: http://docs.python.org/devguide/

  3. Create an account on the Python bug tracker: http://bugs.python.org/

  4. Submit a patch for a Python bug (see the next section for help getting started)
  5. Let the core mentorship mailing list know that you've submitted your patch and are ready to work on your application. We'll craft an application together for a project that fits your background and interests and what you want to learn this summer!

Submitting a patch for a Python bug

Before you can apply for an internship, you'll need to submit at least 1 patch to Python. The Python developer guide describes how to do this in detail, but here are the main steps:

  1. Get the Python source code
  2. Run the Python tests
  3. Pick a bug from http://bugs.python.org/ to work on. If you'd like suggestions, ask on the Core mentorship mailing list

  4. Create a patch addressing the bug

  5. Run the Python tests with your patch applied to make sure they all still pass
  6. Attach your patch to the bug description in the bug tracker
  7. Tell the Core mentorship list that you've submitted your patch, so we can ensure that it gets reviewed and can start working on your application

The tools of Python development

Before you submit a patch, here are some of the tools we use that you may want to review or practice:

  • IRC
  • bug trackers
  • the mercurial (hg) revision control system
  • the diff and patch utilities

IRC

IRC is a real-time group chat system popular with many open source projects. Developers ask questions and discuss patches on IRC, and users also ask questions on IRC.

Learn more about how Python uses IRC here: http://www.python.org/community/irc/.

There are 3 main Python IRC channels, all on the Freenode IRC network, that you may be interested in:

  1. #python-dev: for discussing the development of Python itself

  2. #python: for asking and answering general Python questions

  3. #pyladies: the main PyLadies IRC channel

Bug trackers

Python tracks bugs and features at http://bugs.python.org/.

Please familiarize yourself with how Python uses its bug tracker by exploring and finding answers to the following questions:

  1. What is the oldest open Python ticket?
  2. How many open issues need a patch?
  3. How many "critical"-level open issues are there?

Mercurial

Mercurial is the distributed version control system Python uses to manages changes to its code.

If you have not used Mercurial before, please go through this tutorial: http://hginit.com/

diff and patch

If you have not used diff and patch before, please go through the diff and patch training mission at:

http://openhatch.org/missions/diffpatch

OPW/2014 (last edited 2014-03-18 15:36:12 by JessicaMcKellar)

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