Getting your hands dirty, planning out where to put your plants, and all of those creative aspects of gardening are one of the best parts of getting outdoors. As it turns out, they're also some of the best parts of contributing to open source.
Updating an open source project's documentation is a great way to encourage new contributors that may come from a non-traditional background. Often, imposter syndrome or other challenges can get in the way of new contributors taking that first step. Having a welcoming and supportive environment such as the one at Spinnaker Gardening Days makes all the difference when welcoming and encouraging new contributors.
"But Rin, how is gardening like open source?" Let's find out.
- When it comes to getting your hands dirty, that's basically the entire process behind getting started contributing to open source. Eventually, you break through the fear of making your first contribution, and just dig in. Something sings to you, and it clicks that you can do this.
- Planning. Contributing to OSS involves a lot of planning. How your team plans ultimately decides the success or failure of your project. That's why it's important to have clear contributor guidelines, label your open issues, and be responsive and empathetic to members of your community.
- A big part of gardening is also caring for your plants. Watching them grow, and making sure that they have what they need to thrive. This applies to open source as well. Caring for your community members, ensuring that they have the tools they need to develop software, contribute code, and succeed in their roles is crucial to their success.
Kicking off Spinnaker Gardening Days, I'd been invited to the Spinnaker Slack and had been collaborating with others on some ideas for improving the contributor experience docs prior to the hackathon beginning, so we had a good idea of where to get started. I then met up with one of my friends, Aimee Ukasick, a technical writer at Armory. Aimee then introduced me to Brian Le, another technical writer at Armory.
Prior to this hackathon, I did have some experience contributing to OSS as a Member of Kubernetes. I've also given a few talks and workshops about improving the contributor experience. However, I quickly realized that my workflow I normally used when contributing to Kubernetes was vastly different than my experience at Spinnaker Gardening Days, in a good way!
When getting started, Aimee suggested that I clone the Spinnaker repository to my machine, and get started with GitHub desktop, which I hadn't actually used since sometime in 2018. Needless to say, I was hesitant, starting off my documentation in a tool I was familiar with, HackMD. As someone that is neurodivergent, it can sometimes be difficult to incorporate sudden changes to my workflow. However, I quickly realized that as great a tool as HackMD is, this time it was a far less efficient way of doing things, and was actually slowing down my contributions. So, I got my Spinnaker repository forked and cloned from GitHub, and opened everything up in Atom.
I've very rarely worked on a project in this way, but I quickly got the hang of it. It's uniquely satisfying as someone from a non-technical background to save changes to my document in Atom and then see them reflected in GitHub desktop, ready to commit. Amazing! Is this what being a developer feels like? I think I love it.
I spent the day hacking away on my contributions, making updates to the Spinnaker documentation that detail how to making a change using the GitHub web UI, and how to review a pull request. I even got one merged! I hope that the second PR will be merged sometime over the next few days, which would bring me to a total of two merged PRs in the Spinnaker project.
Overall, I had a great two days at the Spinnaker Gardening Days hackathon. Keep an eye on my Medium page for a recap of the event, and to read more about my journey contributing to open source software as someone that is neurodivergent and comes from a non-traditional background!
- Project Maintainers: Encourage new contributors to get started with OSS by contributing to documentation.
- Docs are a great way to get your feet wet in the OSS community.
- Learning new tools and collaborating with others at a hackathon can be a fun and rewarding way to break into contributing to OSS.