Everything you need to know to contribute to OpenMined!
Welcome to OpenMined! The goal of this Welcome Package is to help you:
get to know who we are and what we do,
find the best place for you to fit into the community,
and get started on your path to contributing in your unique way!
We're happy you're here. :)
Before getting started, it's important to understand OpenMined's mission:
To lower the barrier to entry to privacy preserving technology.
This means that we want to help you by both making your products and research better, and protecting you along the way.
Check out OpenMined's 2020 Roadmap for more about how we plan to make this happen!
We also want to make sure that OpenMined is a welcoming community to anyone who wants to join. To that end, check out our code of conduct for information on how to make sure we continue to be such.
For more detailed information on each of our teams, click the links below:
OpenMined's teams work together on many different projects and repositories. Here is a short overview of our main development projects and what they do:
Check out these charts for more detailed information about how all of these projects work together:
To get started working on these projects, check out our tutorials below.
The first thing you should do is join our Slack community. This is the best place to ask questions, meet other team members, and stay up to date on what's going on in the community.
Once you have joined the Slack organization, there are many channels that you can join for help and community, including:
Next, you should join our mentorship program. OpenMined Mentors are here to help you get started, and to walk you through the steps to becoming an active member of OpenMined.
To get an idea of what you can expect on joining the mentorship program, check out our Mentorship Program infographic.
This is the program that your mentor will walk you through, from choosing a goal team to join, submitting your first pull request, working your way through our learning materials, applying for a team, to what comes after joining a team.
If you're interested in this type of guidance, Click Here to Receive Mentorship!
The OpenMined Learning Team is here to help you get started and work through the materials. To join our community of learners (and any of our cohorts, bootcamps, or study/discussion groups), join our Slack team and join the channel #edulearners_!
For more help from the community as you work through these materials, check out our other Slack channels above. You can ask for help in the #topicbeginnerquestions channel, or the specific channel for the library you're working on (beginning with #lib), and join the _**#gettingstarted**_ channel for more helpful resources!
A good way to get an overview of the technology OpenMined uses, is to watch one of Andrew Trask's presentations. Here are two examples, one shorter and one longer, that will give you a good starting point:
If you're interested in taking a deep dive into these technologies, we have also released a free Udacity course! Check out our Udacity course here.
Once you have an understanding of the technologies used, our tutorials are the best places you can get started. Here are links to our tutorials, once you're ready to jump in:
For more information about what each of these libraries does, check out the Projects and Repositories section above.
Once you have a bit of an idea of how these libraries work, our Good First Issues are a great place to start contributing:
The learning materials above prepare you to join a team and become a contributing member of OpenMined! Once you have gotten to know our code base a bit, check out the links below for information on how to join the team you're most interested in!
For more resources to help you learn about the specific technologies used in our projects, check out our collection of Educational Tools here.
We also understand that many people within our community are not machine learning engineers professionally, so we have put together a list of Beginner Friendly OpenMined Terminology that one might hear when working inside this community. Check that out here, and feel free to create issues for any terms you would like to see added to this list!
If you're interested in seeing what's going on in the world of OpenMined feel free to follow on the OpenMined Social Media channels!