Hey!👋 I am Christina, a Developer Advocate at Forem who focuses on the open source community.
As I continue to work with the community in our open source project, I would love to understand any pain points or successes you have had while trying to contribute to an open source project.
Note: You do not need to name the specific project. If you have tried to contribute to DEV/Forem and want to give specifics that is fine!
Have you tried contributing to open source before?
Were you unsuccessful?
If so, what prevented you from contributing?
Did you encounter any unusual roadblocks?
What could the project maintainers have done better to help you?
Did you feel like the documentation was hard to follow?
Were you successful?
If so, what do you think helped you succeed in contributing to the project?
What advice would you give to someone else trying to contribute to open source.
Is there anything you would do differently?
Top comments (4)
Hi I'm Navendu. I started contributing to open-source at the end of 2019 and now I maintain 2 CNCF projects and work full-time in open-source. So, I guess you can say I was successful in contributing.
What helped + advice:
These might seem unconventional. There are standard boilerplate advices out there that really helps. These are some additional things that I think might help people.
Taking time to learn the tech stack of the project:
I was new to Go, containers and container orchestration. This was one of the reason I wanted to contribute to open-source; so that I can learn these stuff. So, taking time to learn these helped me a lot.
Being comfortable with not knowing everything:
Open-source projects could be really huge and the people who built it may not even know every nooks and corners of the codebase. Then how can you know? Even if you have a very limited knowledge of the project and the tech, you can still make solid contributions.
Knowing how to ask questions properly:
Open-source projects usually have a community of contributors and maintainers who will be ready to help you out. But you can't ask questions like "I was assigned this issue, how do I fix it?" to people. That is not very specific and shows that you did very little homework and you are unlikely to get proper answers.
Instead, ask questions like "I was trying to fix this issue, I tried A which resulted in B and not C. Do you know what I'm doing wrong?". Not only such questions give a lot of context, it makes it easier for people to answer your question. Make it easy for people to help you.
Being the fly on the wall:
When I started out, I used to sit at community meetings and read conversations on Slack without really understanding anything. It is easy to feel overwhelmed and quit when you are not understanding things. But trust me, stick to it long enough. Soon, you will be unstoppable at meetings and people would have to drag you off the stage while you are doing a demo on a tech conference.
You will definitely gain knowledge by listening to these conversations.
What I would do differently
I feel I should have started contributing to open-source earlier. The right time to start is now. So just start contributing.
Over the years contributing to open source has been a mixed bag.The linux kernel was fine, the bug fix I put in was accepted almost immediately and released just fine. However lesser known tools have done a variety of bad things, the most common of which is to just ignore the bug and then close it. I have numerous times had to maintain old versions of libraries and tools due to projects refusal to fix clear bugs. I also had one project ask about converting from GPL3 to MIT license, I said no and they did it anyway so they stole my code and then used it commercially.
All in all I have had a couple of positive experiences but most of them have been mildly negative to extremely so. How well it works really depends on the maintainers and you should have a good look at the tickets and whether they get accepted and closed in a timely manner and at tickets closed by a project and how/why before you contribute or you may just be wasting your time.
Hi I'm codingGee. I'm currently contributing to an open source project, I would love to call the name but at this point i'm really uncertain about it but it's from Zuri. It's my first and it feels great being part so something huge that's molding me for greater opportunities and challenges in the future.
I was and still successful because of the team spirit. I was part of team Einstein haha we were really Einstein in the making and we worked together treating every issues and task assigned to everyone. We'd create a google meet and make sure everyone is learning and working effectively. The bond we created made us successful in every task assigned to us.
If i was to advice anyone on open source projects i'd say go for it! The sleepless nights, internet data exhaustion and many more sacrifice is worth the experience. It sharpens your skill and prepares you for real world challenge as a developer.
Everything I did brought me successfully to the end, I don't think there's anything I would have done differently :D
Some comments may only be visible to logged-in visitors. Sign in to view all comments.