Edit: Spelling and typos
Edit: Spelling and typos
The message, the way I read it, isn't just that you don't know the random project, but you don't really care about it. He says to not just bring a brick, but to build a great school. The AUR example is relevant, because it is a problem you (he) cares about and continues to nurture, not just add a brick/PR and leave.
It's not gatekeepy because it doesn't say "don't contribute". It says "contribute to something you care about and want to succeed, where you will put in more effort than just a one-off, for the sake of the project and not for the sake of learning".
Most projects can find use for a junior developer contributing consistently if the dev will learn the project and domain. It's not gatekeeping.
A drive-by contributor who "wants to get into open source" will often have no experience with a particular project, and may not even have used the software before. People like that don't have the necessary context to start contributing, and their first (and sometimes only) PR is more likely to be counter-productive noise.
If you could clone a school essentially for free, and also a poorly constructed school was not at risk of killing a bunch of kids, I guess we’d be much less skeptical of amateurs building schools.
I do think people write programs best when they are the primary audience, so the idea of just, like, going around with the explicit intent of finding open source projects to contribute to seems a bit misguided. But the stakes are not very high. If nothing else I imagine most open source projects must be able to ignore non-useful contributions, right?
The problem is when someone wants to contribute primarily because they think it will be good for their resume, or even just for a more amorphous "I feel like I should give back" type reason. These sorts of motivations often result in contributions that end up being a drag on a maintainer's time, with little upside. People coming at it from this angle usually don't become dedicated contributors who grow and improve over time. They become a time and energy sink.
I've unfortunately witnessed this firsthand many times in my 20+ years of open source involvement.
Edit: Changed author to contributor as it can be confused as the author of the article.
Most of my job is reasoning about, "should this feature be in this project" and maintaining some bar for quality in merges. I can always push the latter along if worse comes to worse.