* Start using some software that I liked
* Read the documentation and notice poor grammar, punctuation, typos etc.
* submit PR for documentation (man pages, comment lines etc.)
* get PR merged and introduced to the dev team.
* submit more small PRs that are code based (expand existing classes, add minor features) etc.
* the maintainers will generally give feedback that your code doesn't fit into style guides, linters, case conventions etc. So patch it up and get it merged.
* Now you can pretty much do whatever. Test the code on Arm64. Add new OSes to their build pipeline.
My advice: Start small. Actually talk to the maintainers.
I guess the question I would be asking is: Which OSS projects having welcoming communities? or Which OSS projects are easy to contribute to? or Which OSS projects have the best onboarding?
As a single question: Which OSS projects will invest in teaching me how to be an OSS contributor/a member of the greater OSS community?
You can also look at it from a more negative ideological perspective: are there any pieces of software you wish would just go away? Support their biggest competitor by using and contributing to it.
I don't typically start by looking for a project and then finding ways to contribute. I've had limited success doing that (usually by searching on GitHub by language and issue tags), but none of my contributions that I'd consider truly valuable have come about that way.
https://github.com/pycob/pyvibe/blob/main/src/pyvibe/__init_...
More frankly, “best” is very subjective and you should find a passion or topic or task you are already interested and use that to guide your decision.
second, when I started contributing to OSS projects, I found these places helpful:
- https://github.com/sereneblue/awesome-oss
- https://hot.opensauced.pizza/
hope it helps