DEV Community

loading...
Cover image for My open-source experience via SCA Contributhon

My open-source experience via SCA Contributhon

Elizabeth
I am a frontend developer, and I write react.js code these days. I am hoping to share my knowledge with others. she/her
ใƒปUpdated on ใƒป3 min read

This month has been exciting for me, I got into open-source via the contributhon by She Code Africa program, which made it less difficult for me to understand what needs to be done. I will be sharing a summary of my experience and currently merged PRs in this post.

My Experience

When I got a mail from SCA (She Code Africa) that I was part of the selected participant for the program, I felt so excited and scared at the same time because I used to think open-source was for some special set of people๐Ÿ˜…

I had the opportunity to contribute to Layer5 as a frontend developer. Because it was a program from SCA we were assigned to mentors and a person of contact.

The mentors assigned to my team were Jash Patel and Chinmay Mehta and Ruth Ikegah was our person of contact for the program.

The Layer5 team has several repositories and all I just had to do is find an issue I am interested in working on and then asking for it to be assigned to me.

Making contributions

Once I found an issue I could work on (it is usually recommended to select a beginner's friendly issue), I comment on the issue asking for it to be assigned to me to work, once it has been assigned and worked on, we were required to "sign off" our commits. That was the first time I was hearing about signing off a commit and I decided to read up on what it means.
In summary - The purpose of "--sign-off" is to track who made a particular change or added a feature.

Here's an example of signing off a commit

git commit --sign-off -m "fixed a footer glitch"
Enter fullscreen mode Exit fullscreen mode

here's how it'll look like in a PR

image

After pushing the commit and creating a pull request, two of the site maintainers will need to approve the work before it's been pushed.

Attending community meetings

Every week we attended community meetings to discuss new issues or features, welcome and onboard newcomers, and discuss recent changes. Personally, I pick issues during these meetings.

The community

The slack channel is where every other thing happens. This is actually the first time I will be among a very diverse team.

This is one of the many things I will come to like about open source

Personally, I felt welcomed in the community, I can freely ask any question when I got stuck or even share something new.

Project Report Details

Summary of work done

I currently have two pull requests merged in the layer5 meshery.io repository.

Here's a link to a document that summarizes the work done

I currently have some pull requests waiting for approval and I'll be updating them as soon as they're merged.

Challenges faced

My major challenge was when I always forget to sign off my commit. ๐Ÿ˜…

Typical gif

I also had issues jumping into the codebase to make changes, because I had no form of experience with Jekyll. However, the community was helpful with that. I asked questions and got valid and detailed answers. I also wasn't very familiar with gatsby but a stack overflow was really helpful.

Lessons learnt

One of my favorite lessons was realizing how easy anything can be if I put my mind to it. I used to think open-source was for professionals with over 10 years of experience in tech. It sounds so absurd thinking of it now๐Ÿ˜‚

I also understand why it is important to write clean code because if Layer5's codebase was complicated it would have been very difficult for me to jump into the codebase and start editing.

Jekyll and Gatsby are now familiar to me.

Next Steps

The last few weeks in April have been amazing for me or The past month has been amazing for me and I really look forward to making more contributions to layer5 and other open-source communities later on. Open source is amazing and what's even cooler is that great feeling you get when the maintainers approve your pull requests.

Discussion (0)