Differences between revisions 2 and 15 (spanning 13 versions)
Revision 2 as of 2016-10-01 01:07:08
Size: 1854
Editor: TerriOda
Comment: Adding JitViewer link
Revision 15 as of 2016-10-03 17:06:42
Size: 6795
Editor: TerriOda
Comment:
Deletions are marked like this. Additions are marked like this.
Line 3: Line 3:
[[https://www.gnome.org/outreachy/|Outreachy]] is a program to help people from underrepresented communities get involved in free and open source software by providing . Python is participating for this first time this year! [[https://www.gnome.org/outreachy/|Outreachy]] is a program to help people from underrepresented communities get involved in free and open source software by providing . Python is participating after a long break since our last participation in 2014!
Line 5: Line 5:
Python is a popular high-level programming language. It is a general-purpose language used by scientists, developers, and many others who want to get things done quickly and effectively. In this spirit, many of our projects this year are about helping make Python faster! Python is a popular high-level programming language. It is a general-purpose language used by scientists, developers, and many others who want to get things done quickly and effectively. In this spirit, many of our projects this year are about helping make Python faster! Python is a language that can be interpreted and implmented in different ways. The [[https://en.wikipedia.org/wiki/Reference_implementation|reference implementation]] of Python is [[https://en.wikipedia.org/wiki/CPython|CPython]], so named because it's written in C. But it's not the only option! [[http://pypy.org/|PyPy]] is an implementation of Python written in Python that prides itself on great performance. [[http://www.jython.org/|Jython]] is a Python implementation that compiles Python code to Java bytecode. [[http://ironpython.net/|IronPython]] is an implementation of Python for the .NET framework. And there are others.

Our projects this year include work on benchmarks (so we can see which interpreters are faster in which situations), improving the speed of PyPy based on existing benchmarks, and working on supporting tool [[https://bitbucket.org/pypy/jitviewer|JitViewer]]. Since most of the work will be done on PyPy and supporting tools, most of the code written will be in Python.
Line 11: Line 13:
== Mentors ==

 * Ramya Meruva will be the primary mentor for this year's intern. She can be reached at meruvaramya116@gmail.com
 * Monica Ene-Pietrosanu and Peter Xihong Wang are providing additional support

 * Terri Oda is providing organization admin help. She can be reached at TerriOda@gmail.com.
 * James Lopeman (meflin) is providing IRC channel support and organization admin help.
Line 13: Line 23:
Our primary mentor has offered up 3 ideas that she's most excited about: Ramya has offered up 3 ideas that she's most excited about:
Line 24: Line 34:
We'll only be able to take one Outreachy intern this year, so just choose the idea that seems most interesting to you.



== Timeline ==

Check the [[https://wiki.gnome.org/Outreachy/2016/DecemberMarch|Outreachy Schedule]] for all the details

A few key dates:
 * '''October 17''' - application deadline at 7pm UTC
 * '''November 8''' - accepted participants announced at 4pm UTc
 * '''December 6 - March 6''' - internship period

Line 26: Line 50:
We're still working on the best places to chat and ask questions, but for now, we've got an irc channel set up: We're still working on the best places to chat and ask questions, but for now, we've got two irc channels set up:
Line 28: Line 52:
[[http://webchat.freenode.net/?channels=python-outreachy|#python-outreachy]] irc.freenode.net  * [[http://webchat.freenode.net/?channels=python-outreachy|#python-outreachy]] on irc.freenode.net (This is where most of the other python channels are)
 * #python-outreachy on irc.gnome.org (this is where the outreachy help channel is)
Line 31: Line 56:

Please note that Python has a [[https://www.python.org/psf/codeofconduct/|Community Code of Conduct]] and mentors and students working with the PSF are asked to abide by it as members of the Python community.

== Getting Started ==

Not sure where to start? Since this year's ideas all touch PyPy, making sure you understand a bit about it and can at least run some tests is great way to warm up.

 * [[http://doc.pypy.org/en/latest/you-want-to-help.html|You want to help with PyPy, now what?]] is an article that gives you an overview of the architecture and things you want to know about what makes PyPy interesting.
 * [[http://doc.pypy.org/en/latest/getting-started-dev.html|Getting Started Developing With PyPy]] will help you set up the tools you need to be a PyPy developer. Try to at least get to the point where you can run the tests, and make sure to ask for help if you get stuck!
 * [[http://speed.pypy.org/|Take a look at the PyPy benchmarks]] and the [[https://hg.python.org/benchmarks/|Grand Unified Benchmarks]] -- what can you learn about the performance of python? Can you run those benchmarks yourself and see if you get similar results? Try comparing your results to another applicant's and see if you both can learn!

Remember, Outreachy is meant to be a collaborative, friendly environment. You are encouraged to help out your fellow applicants and accept help from them too! And while it's good to try a bit to find answers to your questions on your own, please don't be shy about asking for help if it you get stuck for too long (say, an hour or a day).

== Submitting your application ==

[[https://wiki.gnome.org/action/show/Outreachy?action=show&redirect=OutreachProgramForWomen#Application_Process|Read up on the application process on the Outreachy site]] (that link has answers to a number of common questions and tips on how to be awesome!) and then learn
[[https://wiki.gnome.org/action/show/Outreachy?action=show&redirect=OutreachProgramForWomen#Send_in_an_Application|how to send in an application]].

Remember that unlike other internships you may have applied for, Outreachy applications are meant to be a collaborative experience, so you should plan to talk to Ramya and try a small contribution before you apply so that you know if this is something you'll enjoy doing.

And please don't be afraid to apply! We know that people in underrepresented communities sometimes get hit especially hard with [[https://en.wikipedia.org/wiki/Impostor_syndrome|imposter syndrome]] and worry that they won't be good enough. But Outreachy isn't about finding the perfect canadidate for a job, it's about finding someone who's willing to learn and who could benefit from mentoring and more connections to the open source community. So please, we'd love to meet you, and we'd be happy to help you submit a super awesome application. You don't have to do it alone!

Outreachy with Python

Outreachy is a program to help people from underrepresented communities get involved in free and open source software by providing . Python is participating after a long break since our last participation in 2014!

Python is a popular high-level programming language. It is a general-purpose language used by scientists, developers, and many others who want to get things done quickly and effectively. In this spirit, many of our projects this year are about helping make Python faster! Python is a language that can be interpreted and implmented in different ways. The reference implementation of Python is CPython, so named because it's written in C. But it's not the only option! PyPy is an implementation of Python written in Python that prides itself on great performance. Jython is a Python implementation that compiles Python code to Java bytecode. IronPython is an implementation of Python for the .NET framework. And there are others.

Our projects this year include work on benchmarks (so we can see which interpreters are faster in which situations), improving the speed of PyPy based on existing benchmarks, and working on supporting tool JitViewer. Since most of the work will be done on PyPy and supporting tools, most of the code written will be in Python.

If you're part of a group that is underrepresented in open source communities and available for a full-time (40h/week) paid internship working on Python from December 6, 2016 and March 6, 2017, please consider applying by October 17th, 2016.

Mentors

  • Ramya Meruva will be the primary mentor for this year's intern. She can be reached at meruvaramya116@gmail.com

  • Monica Ene-Pietrosanu and Peter Xihong Wang are providing additional support
  • Terri Oda is providing organization admin help. She can be reached at TerriOda@gmail.com.

  • James Lopeman (meflin) is providing IRC channel support and organization admin help.

Ideas

Ramya has offered up 3 ideas that she's most excited about:

  1. Develop a unified performance benchmark suite that’s acceptable for both Cpython & PyPy communities.

  2. Analyze the GUPB(Grand Unified Python Benchmarks) for which PyPy’s performance is worse than CPython and see if there is any scope for improvement ( ex: try and replicate cpython methodology)

  3. Improving JitViewer (a profiling tool for PyPy) – capable to attach to a running process.

More details on these coming soon!

We'll only be able to take one Outreachy intern this year, so just choose the idea that seems most interesting to you.

Timeline

Check the Outreachy Schedule for all the details

A few key dates:

  • October 17 - application deadline at 7pm UTC

  • November 8 - accepted participants announced at 4pm UTc

  • December 6 - March 6 - internship period

Contacting Us

We're still working on the best places to chat and ask questions, but for now, we've got two irc channels set up:

  • #python-outreachy on irc.freenode.net (This is where most of the other python channels are)

  • #python-outreachy on irc.gnome.org (this is where the outreachy help channel is)

Please join us there to chat with your fellow students and experienced mentors from similar programs! If you're new to IRC, you might want to check out http://www.irchelp.org/

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.

Getting Started

Not sure where to start? Since this year's ideas all touch PyPy, making sure you understand a bit about it and can at least run some tests is great way to warm up.

Remember, Outreachy is meant to be a collaborative, friendly environment. You are encouraged to help out your fellow applicants and accept help from them too! And while it's good to try a bit to find answers to your questions on your own, please don't be shy about asking for help if it you get stuck for too long (say, an hour or a day).

Submitting your application

Read up on the application process on the Outreachy site (that link has answers to a number of common questions and tips on how to be awesome!) and then learn how to send in an application.

Remember that unlike other internships you may have applied for, Outreachy applications are meant to be a collaborative experience, so you should plan to talk to Ramya and try a small contribution before you apply so that you know if this is something you'll enjoy doing.

And please don't be afraid to apply! We know that people in underrepresented communities sometimes get hit especially hard with imposter syndrome and worry that they won't be good enough. But Outreachy isn't about finding the perfect canadidate for a job, it's about finding someone who's willing to learn and who could benefit from mentoring and more connections to the open source community. So please, we'd love to meet you, and we'd be happy to help you submit a super awesome application. You don't have to do it alone!

Outreachy (last edited 2017-07-26 21:31:22 by TerriOda)

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