Post

Open source is more fun with friends. If you don't have the time or energy to contribute yourself, I have a way for you to live vicariously: sponsor me on GitHub and I'll send you updates about what I'm working on. I'll also take feedback on what *you* think I should work on.

I do about 5-10 hours per week of open source work on my own time. These days, I'm doing work in the MobX ecosystem, trying to prepare for us React Compiler compatibility. But when I want a break from that, I dig through React Native community repos and pitch in wherever I can.

0 reposts7 likes

How did you get into contributing to open source projects? I’m sure I speak for a lot of people when I say it’s hard to figure out where to contribute. And even when an opportunity seems promising, it’s tough to know if my contribution is even needed or part of the vision of the project.

Generalizing from my experience + observations: - Biggest factor is showing up and being helpful over time. This gets you involved _and_ shows maintainers you care and can be trusted - Docs are always a great place to start. Every project needs better docs!

Beyond that: - Do read open + recent closed issues to see what's going on - Look for a `CONTRIBUTING` guide - Always good to ask "how can I help?"! Helps avoid wasted time on PRs that aren't as useful atm, and again shows your interest

The short answer is: I struggled with that for a long time, I still do, and I got lucky a few years ago when @jamon.dev presented me with an opportunity to take a leadership role in MobX-State-Tree, which helped me build up some intuition and resilience.

But here's a longer answer: Probably my first real open source was building this Markdown plugin for Eleventy: github.com/coolsoftware... Plugins for a popular tool are a good starting point, because you have no dependencies on other people, but there's a good chance you'll get users.

github.comGitHub - coolsoftwaretyler/eleventy-plugin-markdown-shortcode: Eleventy plugin to add a markdown shortcodeEleventy plugin to add a markdown shortcode. Contribute to coolsoftwaretyler/eleventy-plugin-markdown-shortcode development by creating an account on GitHub.

After that, I kind of got the bug. I hit a problem with an open source project and opened a PR out of the blue: github.com/rbren/rss-pa... The maintainer was very receptive. I wish I had a good permalink, but I think there were actually some people on Twitter who were critical about my code.

github.commanually set timeout to catch ECONNREFUSED in parser by coolsoftwaretyler · Pull Request #146 · rbren/rss-parserTrying to solve #146 The first thing I did was try and swap out the working localhost connection for a url I knew was failing with ECONNREFUSED. The test suite started failing like this: 3) Parser ...

I've had good experience looking up the maintainer(s) on other platforms (primarily Twitter / 𝕏) and asking those more soft questions. A PR to clear up some mistake / typo in the docs is also often very appreciated and shows you're interested and has actually read the friendly manual 😊 Good luck!

First you can peruse the issue boards. Just start answering common questions that you see recurring in a project you're interested in. Helping facilitate the movement or categorizing of issues for maintainers is super helpful.

Yeah the answering questions bit is huge for maintainers. That and helping people make reproducible examples of bugs (or otherwise reproducing/not reproducing) is mega helpful and we absolutely remember who does it.

This will help you gain confidence and start to understand where contributions might be needed. For example, maybe the same question comes up over and over, perhaps the documentation should be updated.

Being active on the issue/discussion boards will get you "face time" with maintainers. Then a dialogue for finding out where contributions are needed becomes easier. That's just one way to start small and progress towards contributions.