Welcome to the Outreach Program for Women!
OpenStack provides open source software for building public and private clouds. We are constantly moving and growing and very excited to invite newcomers to our community. To this end, the OpenStack Foundation has joined the GNOME Outreach Program for Women.
GNOME Foundation has found that the program has dramatically improved the participation by women in their community. For example, at GUADEC they went from having around 4% women to around 17% in just a few years. Representation of women among free and open source participants has been cited at 1.5% as contrasted with the percentages of computing degrees earned by women (all at over 10% higher) in the US. At the October 2012 OpenStack Summit, Anne Gentle led an unconference session about including more women in OpenStack and identified one of the goals as bringing more newcomers to OpenStack. The GNOME Outreach program is an excellent way to meet that inclusion goal.
The program offers a good match for efforts to improve our community for women and all newcomers in OpenStack, making it more welcoming for all. The GNOME program specifically seems to be a perfect fit for OpenStack because it matches mentors with newcomers. Another expected effect is to increase women's attendance at the Summit, maybe in conjunction with scholarships and/or employer support. Contrary to Google Summer of Code, which is aimed only at developers, this program results in many strong applicants because it reaches and is suitable for many people with interests in coding, documentation, design, or marketing.
The Women in OpenStack group has already found 4-6 mentors for the program. Each internship requires $5,000 from OpenStack sponsors or by the Foundation. We have funding from Rackspace and Red Hat for two participants, and the Foundation will sponsor one intern. More funding is welcomed.
The program will start in December 2013. The results of the internships will be ready by Spring 2014 OpenStack Summit.
- October 1: program announced and application form made available
- October 1 - November 11: applicants need to get in touch with at least one project and make a contribution to it
- November 11: application deadline
- November 25: accepted participants announced
- December 10 - March 10: internship period
- April 2014: OpenStack Summit
Participants: What the heck is OpenStack?
In a sentence, OpenStack provides open source software for building public and private clouds. What does that mean? We're a collection of open source projects that integrate to help organizations deploy and run clouds for computing, networking, and storage (both block storage for providing volumes to VMs and object storage for storing objects such as images or music files). With OpenStack, you can control large pools of compute, storage, and networking resources throughout a data center, all managed through a dashboard that gives administrators control while empowering their users to provision resources through a web interface. The Start page on openstack.org has more details.
We have in-person Summits in the fall and spring. We're a community of a lot of companies and individual contributors with a Foundation providing governance and oversight. We collaborate together to build cloud software that's free from vendor lock-in.
Community members at the spring 2012 Design Summit in the Developer Lounge (Flickr:thegentles)
With the help of a mentor, you can navigate these projects to find out more specifics on the types of work available.
There are currently seven core components of OpenStack: Compute, Object Storage, Identity, Dashboard, Block Storage, Network and Image Service. Let's look at each in turn.
- Block Storage (codenamed "Cinder") provides persistent block storage to guest VMs. This project was born from code originally in Nova (the nova-volume service described below). In the Folsom release, both the nova-volume service and the separate volume service are available.
- Compute (codenamed "Nova") provides virtual servers upon demand. Rackspace and HP provide commercial compute services built on Nova and it is used internally at companies like MercadoLibre and NASA (where it originated).
- Dashboard (codenamed "Horizon") provides a modular web-based user interface for all the OpenStack services. With this web GUI, you can perform most operations on your cloud like launching an instance, assigning IP addresses and setting access controls.
- Identity (codenamed "Keystone") provides authentication and authorization for all the OpenStack services. It also provides a service catalog of services within a particular OpenStack cloud.
- Image (codenamed "Glance") provides a catalog and repository for virtual disk images. These disk images are mostly commonly used in OpenStack Compute. While this service is technically optional, any cloud of size will require it.
- Network (codenamed "Quantum") provides "network connectivity as a service" between interface devices managed by other OpenStack services (most likely Nova). The service works by allowing users to create their own networks and then attach interfaces to them. Quantum has a pluggable architecture to support many popular networking vendors and technologies.
- Object Store (codenamed "Swift") provides object storage. It allows you to store or retrieve files (but not mount directories like a fileserver). Several companies provide commercial storage services based on Swift. These include KT, Rackspace (from which Swift originated) and Internap. Swift is also used internally at many large companies to store their data.
OpenStack stages integrated releases every six months, named according to a voted-upon geographic location nearest to the next Summit. The most recent release is named Folsom with the one prior to that named Essex. The release we're working on now is named Grizzly. Don't let all these crazy names (release names, project names, oh my!) stop you from jumping in though. We have a lot of fun in the cloud with names and word play.
Participants: How can I learn even more?
Read the project's page on Launchpad.
We communicate a lot on IRC and all the channels are listed at http://wiki.openstack.org/IRC. You can go to the project's IRC channel, such as #openstack-dev (where the developers are), #openstack (where the deployers are), and for each project you can also find channels with the project name like nova is at #openstack-nova, swift is at #openstack-swift, and so on. You can read the conversation there and jump in when you are ready.
As a prospective applicant, you should consider joining the #openstack-opw channel, where you can meet mentors, interns past and present, as well as other helpful members of the community.
If you are applying for a software development internship, run DevStack in a VM on your laptop to run all the integrated projects in one location. Do ask your mentor or people on IRC for help if you encounter any problems running DevStack.
Look at the open bugs for the project Launchpad, the pattern is http://bugs.launchpad.net/nova where nova is the project name. There are many projects that are not completely code-related. For example, doc bugs are at http://bugs.launchpad.net/openstack-manuals, API doc bugs are at http://bugs.launchpad.net/openstack-api-site, continuous integration bugs are tracked at http://bugs.launchpad.net/openstack-ci, and quality assurance tooling bugs are at http://bugs.launchpad.net/tempest.
Look at the recent changes in the project's Git repository, for example https://github.com/openstack/glance/ shows the most recent changes to the Image service project, Glance.
Read about our use of Gerrit for code reviews at GerritWorkflow.
Read the recent discussion on the project's mailing list, such as http://lists.openstack.org/pipermail/openstack-dev/.
Read the blogs of the project's mentor and other project contributors (you can learn who they are when looking at the Git repository). Many contributor's blogs are collected at http://planet.openstack.org.
Introduce yourself to the project's mentor and discuss what your tasks during the internship program would be.
Participants: How do I apply?
The application process is to send an application containing the following information to a mailing list set up just for reviewing applications.
Please fill out the answers to the following questions and e-mail them to firstname.lastname@example.org with a subject line of "[APPLICATION - Organization Name] Your Name". You may optionally attach your resume or include any other information that is relevant to your application. All applications must be received by 7pm UTC on May 1, 2013.
Please don't send in the application form until you have completed the required initial contribution, unless it's less than a week to the application deadline and you are already working on your contribution. Once you have completed the initial contribution, send in your application right away, so that we have more time to follow up with you in case we need additional information. Please feel free to work on more contributions after that as your time allows. If you need to update your application, just send in an updated version to email@example.com with the same subject line.
Name: E-mail address: IRC Nick: Web Page / Blog / Microblog: Location: Education completed or in progress (i.e., university, major/concentration, degree level, and graduation year): How did you hear about this program? Please describe your experience with the organization's product as a user and as a contributor (include the information about the contribution you made to the project you are interested in here): Please describe your experience with any other FOSS (Free Open Source Software) projects as a user and as a contributor: Please describe any relevant projects that you have worked on previously and what knowledge you gained from working on them: What project(s) are you interested in (these can be in the same or different organizations)? Who is a possible mentor for the project you are most interested in? Please describe the details and the timeline of the work you plan to accomplish on the project you are most interested in (discuss these first with the mentor of the project): Will you have any other time commitments, such as school work, another job, planned vacation, etc., between June 17 and September 23?
Please be available and responsive throughout the application period so we can work with you on improving your application.
Participants: What if I have a question about OpenStack?
With a large collection of projects, just finding out where to ask (or who) can be intimidating. We want you to feel free to contact anyone in the community, and for direct contact, talk to Anne Gentle via email at anne at openstack dot org or Stefano Maffuli at stefano at openstack dot org if you have any questions during the application process. There are also mailing lists available at http://wiki.openstack.org/MailingLists with many purposes.
For information about expectations for mentors and to volunteer to be a mentor, see OutreachProgramForWomen/Mentors.
The identified volunteer mentors are:
- Julie Pichon, Developer, Red Hat. Email: jpichon at redhat dot com. IRC: jpich
- Anne Gentle, Documentation Coordinator, Rackspace. Email: anne dot gentle at rackspace dot com IRC: annegentle
- Stefano Maffulli, Community Manager, OpenStack Foundation. Reed on IRC. Email: stefano at openstack dot org IRC: reed
Volunteer administrators are:
- Anne Gentle, Documentation Coordinator, Rackspace. Email: anne dot gentle at rackspace dot com
- Stefano Maffulli, Community Manager, OpenStack Foundation. Reed on IRC. Email: stefano at openstack dot org
Please see the Ideas page.