This content was originally presented by Damini Satya at the Kubernetes Contributor Summit 2019 in Shanghai, China.
It’s common to hear that writing documentation is a great way to get started in open source. While this may be true, it still leaves a lot open to interpretation. Let’s get a little more specific by looking at how the Kubernetes community breaks tasks down and you just might start to see how you could apply similar work to any project that strikes your fancy.
This list may be for you if you’re a non-code contributor looking for an area of a project that can use your expertise, or if you’re a new contributor looking for a good entrance to the project. But it may also help you if you’re a current contributor who would like to do something different.
While not necessarily code-based, non-code roles often still require knowledge of either general coding or some specific domain knowledge of the project. If you have the former but not the latter, getting involved with non-code work can be a great way to bone up!
Non-Code and Community Contributions
Yes, this is a great way to get started with a new project, as it requires digging into the code base and understanding features. Another way to help with documentation is to offer translation or editing services to folks writing docs who may not be comfortable writing in the language of the main project repository. You can join the #sig-docs channel on the K8s (Kubernetes) Slack.
This could be blogging about your experiences learning the tool or technology, working on operational manuals, or maintaining website copy, like for a new contributor website. You could also work on editing pull request text for clarity, writing release notes, creating playbooks, and more.
You can help the community by educating about Kubernetes and other sub-projects or on-boarding new contributors. How can you do this? Well, Kubernetes hosts multiple sessions on educating users/contributors on various platforms and you can be part of it, by hosting/moderating the sessions, doing demos, answering questions in forums or chat communities like Slack and StackOverflow. and so on. You could also share your work at local meetups or staff the project’s booth at conferences.
You can help with confirming ownership of tasks, issues, etc. spread across different projects under the K8s ecosystem.
We didn’t say non-code meant non-technical! These skills are important additions to every project team. You can help with enhancing the K8s dashboard project and the documentation sites! Join the #sig-ui channel.
Someone needs to keep the tags and repositories organized! It’s also very helpful to have someone doing issue triage and tagging issues that would be good for first-time contributors.
Have graphics skills? You can make diagrams and visual explanations of concepts, design infographics and icons, or make other artistic contributions to strengthen the project’s brand and education.
Want to learn how K8s releases work? You can be part of the K8s release team taking up different roles like release shadow, release manager, release lead for a specific SIG (Special Interest Group) and so on. Want to learn more about it? Join the #sig-release team on slack.
Technical Project Leadership
If you have a good understanding of the code base, you could be very valuable by taking the lead of the architecture or steering committee!
Host a Meetup
Not ready to present your work? You can still do the logistical work of hosting a meetup. Kubernetes meetups are managed by the CNCF and they have a way to apply to host a new local meetup. If one already exists where you are, offer your services to the organizer(s). We promise they will thank you.
Management of Communications Tools
Moderating mailing lists and chat forums is not at all an easy task. You can help us with preparing and uploading videos to YouTube, keeping the community calendar up-to-date, monitoring communication metrics and so on.
Helping to find new volunteers, and matching volunteers up to the right special interest groups or working groups is definitely a huge task in a community like K8s and we really appreciate it. You can also help us in recognizing frequent contributors, new projects, areas of growth — and do not forget about the #shoutouts channel in Slack.