My first open source contribution
What is open source ?
Open source simply means something people can modify and share because its design is publicly accessible . Open source software is a software whose source code is published and made available to the public, enabling anyone to copy, modify and redistribute the source code .
My story
Before making my first contribution to the community , I always thought
- Am I good enough to contribute ? I don’t have much coding experience , how will I contribute and where ?
- What if I break something ?
- What if I am not able to complete my assigned task ?
and the list goes on…..
if you had or have any of these thoughts you are not alone, Contributing to open source for the first time can be scary and a little overwhelming , however, as evidenced by how widespread open source is, there are a lot of opportunities to break into it and thrive even if you’re new.
How I pulled through this !!
A few months ago I joined an amazing community called “Code For Cause” where I learned more about open source and how easy it is to contribute even if you don’t have much experience . There I got to know about an event called OPEN SOURCE HACK (OSH)organised by AnitaB.org
Code for cause: An initiative to help the community by providing training, guidance and awareness about the possibilities in the software field to students & professionals.
What’s OSH and how was my experience ?
Open Source Hack is a platform for contributors to showcase and improve their skill set, contribute to all aspects of open source software development and work with a global community , even if you don’t have much coding experience.
About AnitaB.org
AnitaB.org is an organisation which is OPEN TO EVERYONE, including UI/UX designers, developers, testers and beyond to participate in creating social impact products to help nonprofit or NGO communities.They talk about technology, design, implementation, testing methodologies and more to help build products that are innovative and useful to those who are using them. Their goal is to be inclusive to the largest number of contributors, with the most varied and diverse backgrounds possible.
At first I read the README.md and CONTRIBUTION.md files to know about what is the project , how it works and how to contribute in it , this helped me a lot and provided me the information I needed to get started
then I looked up for suitable issues on which I can work on ( FIRST TIMER issues are good for start) and then I commented on one such issue ,asking if I can work on that issue
I was little scared but when I was assigned my first issue , I told myself that there’s no going back now . In the beginning , I had many doubts but mentors were always there and helped me overcoming every barrier . The best part about open source is that you are not alone , people are always there to help you and guide you . Whenever I had any doubt in accessing any file or setting up the environment , I asked in the comments or on the Zulip chat and all my problems were resolved . This doesn’t mean that they will spoon-feed you , you will have to do the research and work but in case you face any problem , they are there to help .
My first contribution was deleting a file in the mentorship backend repository
yesss!!! that’s it , I didn’t code anything or tested anything , my first PR was just deleting a swagger.json file . It seems very easy , and you are right ,it is, but the confidence and boost I got when my PR was merged was unparalleled
This led me to submit 13+ pull requests which included documentation ,user interface , outreach/research and quality assurance and testing . Every PR submission gave me the boost to work on the next issue and contribute more.
That’s how I was able to contribute and get into the open source world
Contributing to such organisations helps to
- Increase community and peer recognition
- Gain experience by contributing to user level software
- know about how real world implementation works
How you can make your first contribution
FIRST : “Find the organisations or open source repositories which you find suitable according to your skillset”
You can also find the organisations on GSOC archives and outreachy . AnitaB.org is also an GSOC organisation . Those who are planning for GSOC can visit their page
SECOND : “Read and know more about the repository or project you are interested ”
Reading README.md and CONTRIBUTE.md is important , it helps a lot .Also join their zulip chat group for communication
THIRD : “Find the issues which suits you according to difficulty and skillset required ”
First timer labelled issues are good to start with , also before submitting a PR ,it’s best to ask and get the issue assigned to you first so that the mentor/author of the issue can keep a track and know about your work
FORTH : “Work on the issue ,ask if any problem and submit a PR”
If you are facing any problem in setting up the environment or in solving the issue ask for help on zulip or in the issue comments . When you are done, submit a PR
FIFTH : “Clean up the code or make the changes asked by the mentor and submit the final PR”
The mentor might ask you to make some changes or give advice to clean your code , after which you can submit the final PR
SIXTH: “Celebrate after it’s merged 🎉🎉 ”
Congratulations!! you are now a contributor in that organisation
that’s how you can get into the open source world
FINAL THOUGHTS
My experience so far : “It’s a little bit scary. But Incredibly Rewarding!”
If you’re new to programming like me, contributing to an open-source project is a good idea . It may seem scary at first and parts of it definitely were. That means you’re heading in the right direction.You’re stepping out of your comfort zone and into uncharted territory. This is where the real learning happens. This is where you’ll be challenged in ways you couldn’t have imagined.
Thanks for reading! I hope you found this article helpful. If so, let me know by liking or leaving a comment below 😊 .