My Open Source Hack Experience
What is OSH?
Open Source Hack is a 1 month-long open source program that AnitaB.org. It aims to help beginners and newcomers kickstart their open source career.
Participants who completed rules will get a digital certificate and top contributors(maximum PRs merged) will get a small gift card in addition to the certificate.
AnitaB.org have dedicated channels on zulip chat for new contributors to ask their doubts which can be found at http://anitab-org.zulipchat.com.
During this program, participants had to make a pull request for each of the issues mentioned below:
- Quality Assurance/Coding
- Outreach/ Research
- User Interface
Note:- All issues must have the label “Open Source Hack” to be eligible for the program. More details
- Increase community and peer recognition.
- Gain experience
- Mentors to help you achieve your goals
- Digital Certificate on completion
- Small Gift Card for Top 5 contributors
In Open Source Hack, participating projects were:
You can go through them, set up locally & search for issues with “Open Source Hack” label and see if you can resolve any of them.
At first, I spent some time on Bridge-In-Tech Backend and wrote test cases there for API endpoint. Although this project was not participating in OSH, I found it similar to mentorship-backend and decided to go with it first. As mentioned in the description itself, “Bridge-In-Tech is an application that allows industries/companies, mentors and students to actively collaborate”. While working on the issue assigned to me I also solved some typos there.
Although it takes time to set up the project locally and write test cases, I was able to make a pull request.
My first pull request in AnitaB was:-
After it, I started exploring mentorship-backend.
Mentorship Backend is Flask REST API for the mentorship System. The backend can be found at- https://mentorship-backend-temp.herokuapp.com/
It contains different API endpoints for Users, Admins and Mentors like register, login, etc.
The first issue I found here was related to pip dependency errors. Due to some conflicting dependencies in the requirements file, pip commands were raising errors. Although, I was not able to reproduce the bug in the beginning by following the description mentioned for at least two days. But once I was able to regenerate it, I do some google search about different error messages that pop up and remove some of the dependencies to get it resolved.
This pull request motivates one of the mentors to open a new issue to audit dependencies and fix/upgrade/remove them. As this was similar to first, I take up this as well.
By going to commit history, I was able to track different dependencies that were not needed anymore. Sanket Dasgupta, one of the mentors of Open Source Hack, helps me a lot in solving this issue.
Another issue that I had to work on was related to manual testing user/resend_email endpoint. This issue was easy and required only one hour to make a pull request.
After going through other issues, I wasn’t able to get any of them assigned. Therefore explore VMS and mentorship-android.
Although, in the Volunteering Management System, I got some issues assigned but wasn’t able to solve them. In mentorship-android too, I was not able to find issues relevant to me but then found one related to Design.
Open Source Hack was a very beginner-friendly program that I found. Except for the first issue that requires me to code, other issues were solved by observation and some research work only.
It seems difficult for newcomers to come in the field of Open Source and start making their first contributions but by providing issues that are not related to code, AnitaB provides an opportunity for everyone to participate and promote Open Source culture. The mentors and maintainers were also active and review pull requests periodically.
Mentors at AnitaB.org were active for the whole month and helps everyone getting their assigned issues solved.
They actively reviewed pull requests, suggest changes and even guide you all the way to your pull request.
AnitaB.org have a rule that one issue will be assigned to only one contributor at a time and this helps all to not look into an issue that is being looked by someone else and go for other issues instead.
Note: My first two pull request were not related to Open Source Hack but give me an idea of what organisation the does.