Ask HN: Where to Start Contributing OSS?
Hi, I am software engineer. And, as the time is passing I would like to get into the Open Source world.
What are the best OSS projects to contribute to? I am searching for a good community to start from.
I am at a good level with Python and JavaScript, and I have an understanding of C++ and Golang.
But I am not scared of learning new languages if it's needed.
Any suggestions are welcome! :)
14 comments
[ 3.3 ms ] story [ 36.9 ms ] threadMore 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.
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_...
https://github.com/pycob/pyvibe
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
* 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.