Size: 6728
Comment:
|
← Revision 27 as of 2017-12-30 01:30:27 ⇥
Size: 9764
Comment: converted to 1.6 markup
|
Deletions are marked like this. | Additions are marked like this. |
Line 1: | Line 1: |
= What is OPW? = | ## page was renamed from OPWMentor = What is Outreachy? = |
Line 3: | Line 4: |
According to a 2002 survey of open source communities, only 1.1% of participatants are women. In order to increase diversity in open source, the GNOME Foundation created the FOSS Outreach Program for Women (OPW). The program provides a three-month paid internship, where participants are paired with mentors from one of 19 different open source projects. The Linux kernel is one of those projects. | According to a 2002 survey of open source communities, only 1.1% of participatants are women. Many outreach efforts have taken place since, and the more recent 2013 survey found that 11% of FLOSS contributors are women. The number is still much less than the number of women participating in proprietary software development (30-40%, according to various surveys). |
Line 5: | Line 6: |
The GNOME Foundation coordinates the overall program and pays the interns. [https://wiki.gnome.org/KarenSandler Karen Sandler] and [https://wiki.gnome.org/MarinaZhurakhinskaya Marina Zhurakhinskaya] coordinate the overall OPW program. Each separate open source project has a coordinator that communicates with project applicants, interns, and mentors. [wiki:SarahSharp Sarah Sharp] is the coordinator for the Linux Kernel project in OPW. | In order to increase diversity in open sourctase, the GNOME Foundation created the FOSS Outreach Program for Women (OPW). OPW has recently been renamed Outreachy, to reflect its more general focus, and has been taken over by the Software Freedom Conservancy. The program provides a three-month paid internship, where participants are paired with mentors from one of many different open source projects. The Linux kernel is one of those projects. The GNOME Foundation coordinates the overall program and pays the interns. [[https://wiki.gnome.org/KarenSandler|Karen Sandler]], [[https://wiki.gnome.org/MarinaZhurakhinskaya|Marina Zhurakhinskaya]] and [[SarahSharp|Sarah Sharp]] (former kernel coordinator) coordinate the overall Outreachy program. Each separate open source project has a coordinator that communicates with project applicants, interns, and mentors. [[JuliaLawall|Julia Lawall]] is the coordinator for the Linux Kernel. |
Line 9: | Line 12: |
The OPW internships run twice yearly, from June to September and December to March. This allows the internships to happen during the northern and southern hemisphere summers, when college students are likely to have time off. | Outreachy internships run twice yearly, from May to August and December to March. This allows the internships to happen during the northern and southern hemisphere summers, when college students are likely to have time off. = Who are these interns? = The Outreachy program is open to women (cis and trans), along with genderqueer, genderfluid, and genderfree individuals. For the May to August 2015 round, the Outreachy program is also open to alumni from the [[http://ascendproject.org/|Ascend Project]], which aims to teach open source programming to people from non-traditional backgrounds: low income, people of color, and/or LGBTQ. This means the program may have a mixture of both men and women. Although we do get a lot of college students applying for Outreachy, we also get a lot of people from non-traditional backgrounds. Some people may have no college experience or only one or two courses. Others may have graduated with a degree, but may not have a job that utilizes their technology degree. Some people may want to switch careers, say from a Linux sysadmins to a Linux developer. The only requirement for Outreachy is that these people meet the first paragraph requirements. For the Linux kernel, we also require them to have C programming experience. Some of them may have operating systems knowledge, and some may not. Many will learn git for the first time during the application process, and many more will use IRC for the first time. Most of the interns we select already have background using Linux, but haven't dived into developing on Linux. |
Line 13: | Line 24: |
Kernel developers who want to provide a project for OPW interns to work on can volunteer as mentor. We have also had several people successfully co-mentor one intern on the same project. | Kernel developers who want to provide a project for Outreachy interns to work on can volunteer as mentor. We have also had several people successfully co-mentor one intern on the same project. |
Line 17: | Line 28: |
Mentors provide projects for interns to work on during the three-month internship. Ideally, these start out as bite-sized bugs or small tasks that allow the interns to get familiar with your subsystem, and are followed by a larger feature. Tasks should not be critical-path, and should be able to be completed within three months. Remember, interns will likely take 2-10 times longer than you think a project should take, so choose wisely. If you pick a project that doesn't have good documentation, you may have to spend extra time ramping up your intern. | Mentors provide projects for interns to work on during the three-month internship. Ideally, these start out as bite-sized bugs or small tasks that allow the interns to get familiar with your subsystem, and are followed by a larger feature. Tasks should not be critical-path, and ideally should be able to be completed within three months. Some interns will continue working on the project after the internship is done, but their time to work on it will be sporatic. Remember, interns will likely take 2-10 times longer than you think a project should take, so choose wisely. If you pick a project that doesn't have good documentation, you may have to spend extra time ramping up your intern. |
Line 19: | Line 30: |
The project can either be focused on the kernel (core, drivers, filesystems), or on tools that help kernel developers (sparse, coccienelle, kernelshark), or a combination of kernel and userspace interface work (KVM, Xen). | The project can either be focused on the kernel (core, drivers, filesystems), or on tools that help kernel developers (sparse, coccienelle, kernelshark), or a combination of kernel and userspace interface work (KVM, Xen). Mentors will need to provide a list of small tasks for applicants to get used to their project. This could be a small bug fix, a stack diagram of functions used in a particular code path, or some small feature. Please make sure to withhold some simple tasks from that list, in order to ensure your selected intern has tasks to ramp up on. If you list those tasks on a separate website, please link that from your project description on the [[OPWIntro| Outreachy intro page]]. You may also create a separate page for your small tasks and link that page. Applicants will coordinate who is working on what task through the [[OutreachyTasks| tasks page]]. If a claimed task hasn't been completed in a week, it will be removed from the page, and will be up for grabs by any applicant. |
Line 21: | Line 32: |
Please see the description of [:OPWRound6:Round 6] and [:OPWRound7:Round 7] projects to get an idea of the scope of successful projects. | Please see the description of [[OPWRound6|Round 6]], [[OPWRound7|Round 7]], [[OPWRound8|Round 8]], and [[OPWRound9|Round 9]] projects to get an idea of the scope of successful projects. |
Line 25: | Line 36: |
During the month-long OPW application period, potential interns will contact you directly to get more information about your project. In order to be accepted as an intern, applicants will have to complete the [:OPWfirstpatch:tutorial] for creating their first kernel patch. The applicants will send their staging driver cleanup patches to a separate mailing list. Mentors are expected to help out with code review and answering questions on the IRC channel. | During the month-long Outreachy application period, potential interns will contact you directly to get more information about your project. In order to be accepted as an intern, applicants will have to complete the [[OPWfirstpatch|tutorial]] for creating their first kernel patch. The applicants will send their staging driver cleanup patches to a separate mailing list. Mentors are expected to help out with code review and answering questions on the IRC channel. |
Line 27: | Line 38: |
This stage of the OPW process is seriously like drinking from a firehose. During the Round 6 application process, applicants sent an average of 28 patches per day. All mentors need to participate in patch review in order to spread the work load. Some of the past OPW interns will also be helping out with patch review and answering questions on IRC. | This stage of the Outreachy process is seriously like drinking from a firehose. During the Round 6 application process, applicants sent an average of 28 patches per day. All mentors need to participate in patch review in order to spread the work load. Some of the past Outreachy interns will also be helping out with patch review and answering questions on IRC. |
Line 29: | Line 40: |
The application period allows mentors to get a clear sense of whether applicants can follow directions and where applicants get stuck and need help. It's long enough that applicants who are self-starters will move on to using advanced tools like sparse, coccienelle and smatch. Basically, the application period allows mentors to learn which applicants have clue. | The application period allows mentors to get a clear sense of whether applicants can follow directions and where applicants get stuck and need help. It's long enough that applicants who are self-starters will move on to using advanced tools like sparse, coccinelle and smatch. Basically, the application period allows mentors to learn which applicants may be a match for their project. |
Line 35: | Line 46: |
When the application period ends, the OPW mentors review intern applications and code contributions, and decide which interns to take. Applicants to the program are asked to rank Linux kernel projects in the order that most interests them. All mentors and the Linux kernel OPW coordinator (Sarah Sharp) collaborate to match interns to the project that best suits their interests, skills, and background. If a mentor feels there are no applicants that are suited for their project, they don't have to accept an intern. | When the application period ends, the Outreachy mentors review intern applications and code contributions, and decide which interns to take. Applicants to the program are asked to rank Linux kernel projects in the order that most interests them. All mentors and the Linux kernel Outreachy coordinator (Julia Lawall) collaborate to match interns to the project that best suits their interests, skills, and background. If a mentor feels there are no applicants that are suited for their project, they don't have to accept an intern. |
Line 45: | Line 56: |
Interns work full-time on their OPW projects, so mentoring an intern is as time-consuming as ramping up and mentoring a new employee. | Interns work full-time on their Outreachy projects, so mentoring an intern is as time-consuming as ramping up and mentoring a new employee. Expect to spend 5-7 hours a week working with your intern. |
Line 49: | Line 60: |
Great! Email [[MailTo(sarah.a.sharp AT intel DOT com, Sarah Sharp)]] and indicate your interest in participating as a mentor. | Great! Email <<MailTo(Julia.Lawall AT lip6 DOT fr, Julia Lawall)>> and indicate your interest in participating as a mentor. |
Line 54: | Line 65: |
* #opw and #opw-admin on irc.gnome.org * #kernel-opw on irc.oftc.net |
* #outreachy and #outreachy-admin on irc.gnome.org * #kernel-outreachy on irc.oftc.net |
Line 59: | Line 70: |
3. Email Sarah with your kernelnewbies.org username, so she can add you to the editors group. Also tell Sarah which email address you would like to have subscribed to the OPW mailing lists. You will be receiving patches at this email address, so you will need to be able to respond to emails in plain text, and possibly apply the patches. Any email address you would use for Linux kernel mailing lists is fine. | 3. Email Julia with your kernelnewbies.org username, so she can add you to the editors group. Also tell Julia which email address you would like to have subscribed to the Outreachy mailing lists. You will be receiving patches at this email address, so you will need to be able to respond to emails in plain text, and possibly apply the patches. Any email address you would use for Linux kernel mailing lists is fine. |
Line 61: | Line 72: |
After Sarah emails you back, saying you've been added to the kernelnewbies editor's page, please: | After Julia emails you back, saying you've been added to the kernelnewbies editor's page, please: |
Line 63: | Line 74: |
4. Create a user home page that interns will read to learn more about you. At the bare minimum, you need to provide your nick on the #opw and #kernelnewbies channel and your email address. Anything else is optional. Here's [:SarahSharp:an example homepage]. | 4. Create a user home page that interns will read to learn more about you. At the bare minimum, you need to provide your nick on the #outreachy and #kernelnewbies channel and your email address. Anything else is optional. Here's [[JuliaLawall|an example homepage]]. |
Line 65: | Line 76: |
5. Update the [:OPWIntro:OPW introduction page] with your project description, and (optionally) a picture for your project. | 5. Update the [[OutreachyIntro|Outreachy introduction page]] with your project description, and (optionally) a picture for your project. |
Line 67: | Line 78: |
Sarah will email Karen and Marina to make sure you are on the following generic OPW mailing lists: | Julia will email Karen, Marina and Sarah to make sure you are on the following generic Outreachy mailing lists: |
Line 71: | Line 82: |
Sarah will subscribe you to the following mailing lists that are specific to the kernel project within OPW: * opw-kernel |
Julia will subscribe you to the following mailing lists that are specific to the kernel project within Outreachy: * outreachy-kernel |
What is Outreachy?
According to a 2002 survey of open source communities, only 1.1% of participatants are women. Many outreach efforts have taken place since, and the more recent 2013 survey found that 11% of FLOSS contributors are women. The number is still much less than the number of women participating in proprietary software development (30-40%, according to various surveys).
In order to increase diversity in open sourctase, the GNOME Foundation created the FOSS Outreach Program for Women (OPW). OPW has recently been renamed Outreachy, to reflect its more general focus, and has been taken over by the Software Freedom Conservancy. The program provides a three-month paid internship, where participants are paired with mentors from one of many different open source projects. The Linux kernel is one of those projects.
The GNOME Foundation coordinates the overall program and pays the interns. Karen Sandler, Marina Zhurakhinskaya and Sarah Sharp (former kernel coordinator) coordinate the overall Outreachy program. Each separate open source project has a coordinator that communicates with project applicants, interns, and mentors. Julia Lawall is the coordinator for the Linux Kernel.
What's the timeline?
Outreachy internships run twice yearly, from May to August and December to March. This allows the internships to happen during the northern and southern hemisphere summers, when college students are likely to have time off.
Who are these interns?
The Outreachy program is open to women (cis and trans), along with genderqueer, genderfluid, and genderfree individuals. For the May to August 2015 round, the Outreachy program is also open to alumni from the Ascend Project, which aims to teach open source programming to people from non-traditional backgrounds: low income, people of color, and/or LGBTQ. This means the program may have a mixture of both men and women.
Although we do get a lot of college students applying for Outreachy, we also get a lot of people from non-traditional backgrounds. Some people may have no college experience or only one or two courses. Others may have graduated with a degree, but may not have a job that utilizes their technology degree. Some people may want to switch careers, say from a Linux sysadmins to a Linux developer.
The only requirement for Outreachy is that these people meet the first paragraph requirements. For the Linux kernel, we also require them to have C programming experience. Some of them may have operating systems knowledge, and some may not. Many will learn git for the first time during the application process, and many more will use IRC for the first time. Most of the interns we select already have background using Linux, but haven't dived into developing on Linux.
What is required of mentors?
Kernel developers who want to provide a project for Outreachy interns to work on can volunteer as mentor. We have also had several people successfully co-mentor one intern on the same project.
Preparing a project
Mentors provide projects for interns to work on during the three-month internship. Ideally, these start out as bite-sized bugs or small tasks that allow the interns to get familiar with your subsystem, and are followed by a larger feature. Tasks should not be critical-path, and ideally should be able to be completed within three months. Some interns will continue working on the project after the internship is done, but their time to work on it will be sporatic. Remember, interns will likely take 2-10 times longer than you think a project should take, so choose wisely. If you pick a project that doesn't have good documentation, you may have to spend extra time ramping up your intern.
The project can either be focused on the kernel (core, drivers, filesystems), or on tools that help kernel developers (sparse, coccienelle, kernelshark), or a combination of kernel and userspace interface work (KVM, Xen). Mentors will need to provide a list of small tasks for applicants to get used to their project. This could be a small bug fix, a stack diagram of functions used in a particular code path, or some small feature. Please make sure to withhold some simple tasks from that list, in order to ensure your selected intern has tasks to ramp up on. If you list those tasks on a separate website, please link that from your project description on the Outreachy intro page. You may also create a separate page for your small tasks and link that page. Applicants will coordinate who is working on what task through the tasks page. If a claimed task hasn't been completed in a week, it will be removed from the page, and will be up for grabs by any applicant.
Please see the description of Round 6, Round 7, Round 8, and Round 9 projects to get an idea of the scope of successful projects.
Helping out during the application period
During the month-long Outreachy application period, potential interns will contact you directly to get more information about your project. In order to be accepted as an intern, applicants will have to complete the tutorial for creating their first kernel patch. The applicants will send their staging driver cleanup patches to a separate mailing list. Mentors are expected to help out with code review and answering questions on the IRC channel.
This stage of the Outreachy process is seriously like drinking from a firehose. During the Round 6 application process, applicants sent an average of 28 patches per day. All mentors need to participate in patch review in order to spread the work load. Some of the past Outreachy interns will also be helping out with patch review and answering questions on IRC.
The application period allows mentors to get a clear sense of whether applicants can follow directions and where applicants get stuck and need help. It's long enough that applicants who are self-starters will move on to using advanced tools like sparse, coccinelle and smatch. Basically, the application period allows mentors to learn which applicants may be a match for their project.
This phase typically takes several hours per day.
Selection of interns
When the application period ends, the Outreachy mentors review intern applications and code contributions, and decide which interns to take. Applicants to the program are asked to rank Linux kernel projects in the order that most interests them. All mentors and the Linux kernel Outreachy coordinator (Julia Lawall) collaborate to match interns to the project that best suits their interests, skills, and background. If a mentor feels there are no applicants that are suited for their project, they don't have to accept an intern.
The meeting to select interns typically takes a half an hour to an hour.
Internship
During the three-month internship period, mentors answer their intern's questions, provide guidance on the direction of the project, review code, and provide encouragement and support on the mailing lists. If an intern is working on a simple project with multiple parts, they may send 20-60 patches during the internship, which will require more patch review. If an intern is working on a complex project, they may send very few patches, but need a lot of extra guidance and one-on-one mentoring.
Mentors and interns typically meet for an hour a week, through a phone call or video conference. They may meet more frequently or longer as necessary. Mentors and interns may not work in the same timezone, so you may have to compromise on when to meet.
Interns work full-time on their Outreachy projects, so mentoring an intern is as time-consuming as ramping up and mentoring a new employee. Expect to spend 5-7 hours a week working with your intern.
I still want to help out!
Great! Email Julia Lawall <Julia.Lawall AT lip6 DOT fr> and indicate your interest in participating as a mentor.
Then follow these steps:
1. Start logging in daily to these IRC channels:
- #outreachy and #outreachy-admin on irc.gnome.org
- #kernel-outreachy on irc.oftc.net
2. Create an account on kernelnewbies.org and remember your username.
3. Email Julia with your kernelnewbies.org username, so she can add you to the editors group. Also tell Julia which email address you would like to have subscribed to the Outreachy mailing lists. You will be receiving patches at this email address, so you will need to be able to respond to emails in plain text, and possibly apply the patches. Any email address you would use for Linux kernel mailing lists is fine.
After Julia emails you back, saying you've been added to the kernelnewbies editor's page, please:
4. Create a user home page that interns will read to learn more about you. At the bare minimum, you need to provide your nick on the #outreachy and #kernelnewbies channel and your email address. Anything else is optional. Here's an example homepage.
5. Update the Outreachy introduction page with your project description, and (optionally) a picture for your project.
Julia will email Karen, Marina and Sarah to make sure you are on the following generic Outreachy mailing lists:
- OPW admin
- opw-list
Julia will subscribe you to the following mailing lists that are specific to the kernel project within Outreachy:
- outreachy-kernel
- opw-mentor
- opw-int