I want to contribute to your project, how do I start? August 10, 2020 on Drew DeVault's blog

I get this question a lot! The answer is usually… don’t. If you already know what you want to do, then the question doesn’t need to be asked.1 But, if you don’t already know what you want to do, then your time might be better spent elsewhere!

The best contributors are always intrinsically motivated. Some contributors show up every now and then who appreciate the value the project gives to them and want to give something back. Their gratitude is definitely appreciated2, but these kinds of contributions tend to require more effort from the maintainers, and don’t generally lead to recurring contributions. Projects you already like are less likely to need help when compared to incomplete projects that you don’t already depend on — so this model leaves newer projects with fewer contributors and encourages established projects to grow in complexity.

Instead, you should focus on scratching your own itches. Is there a bug which is getting on your nerves? A conspicuously absent feature? Work on those!

If there’s nothing specific that you want to work on, then you may be better off finding something to do in a different project. Don’t be afraid to work on any free- and open-source codebase that you encounter — nearly all of them will accept your patches. If something is bothering you about another project, then go fix it! Someone has a cool idea and needs help realizing it? Get involved! If we spread the contributions around, the FOSS ecosystem will flourish and the benefits will come back around to our project, too.

So, if you want to contribute to open-source — as a whole — here are my tips:

If you want to work on a specific project, and you have a specific goal in mind: perfect! If you don’t have a specific goal in mind, try to come up with some. And if you’re still drawing a blank, consider another project.


  1. Or perhaps the better question is “where should I start with this goal?” ↩︎

  2. For real, we don’t hear “thanks” very often and expressions of gratitude are often our only reward for our work. We do appreciate it :) ↩︎

Have a comment on one of my posts? Start a discussion in my public inbox by sending an email to ~sircmpwn/public-inbox@lists.sr.ht [mailing list etiquette]

Articles from blogs I read Generated by openring

Command PATH security in Go

Today’s Go security release fixes an issue involving PATH lookups in untrusted directories that can lead to remote execution during the go get command. We expect people to have questions about what exactly this means and whether they might h…

via The Go Programming Language Blog January 19, 2021

Status update, January 2021

Hi all! This month again, my main focus has been wlroots. I’ve focused on the internal renderer refactoring (the so-called “renderer v6"). A lot of the work has now been completed, and all backends now use the new interfaces under-the-hood. With the help …

via emersion January 18, 2021

What's cooking on Sourcehut? January 2021

Another year begins, and hopefully with better prospects for us all. SourceHut has emerged from 2020 relatively unscathed, thankfully, and I hope the same is true of most of our users. A body which, by the way, today numbers 19,647 strong, up 623 from Decemb…

via Blogs on Sourcehut January 15, 2021