There is no gain without struggle.
It’s almost four weeks of my Outreachy Internship period and I’m having an amazing experience with my project so far. However, learning and experiencing new things invites a lot of challenges. I too struggle sometimes.
My struggle started when I had to start using Ubuntu for my project during the contribution period. I had very little knowledge of Linux commands.😅 So, making myself comfortable with Ubuntu was a new challenge for me.
My internship with Ocaml is all about improving their website. The tech stacks to build this project includes ReScript, React, Tailwind and OCaml, etc. And guess what? these all are new things to me 🤣 except React that I was familiar with before this internship was started.
So, the first two weeks went by learning and exploring these new things. But the real struggle came when I started working on my first issue. I had no idea what to do. Initially, I was hesitant to ask, since I didn’t have any particular questions, I was confused about almost everything. I began reading the documentation and exploring the codebase. Still, my efforts weren’t enough. Finally, I brought this up on a call with my mentors. They screen-shared and gave me an overall idea of the codebase and that was helpful indeed. I was able to raise my first PR.🎉
It’s ok to ask questions, never be afraid of asking for directions. Don’t be embarrassed or fake knowledge to look cool. Be brave and curious.😃
I love that my mentors gave me the freedom to work on what I like, they encourage me to ask questions whenever I got stuck in the code as every question is important. I am working on my next task and still struggling with many bugs, errors but this time I’m not afraid of asking for help from my mentors and thankfully they respond quickly.
So, here is the situation we all can relate to.😁
OpenSource Vocabulary Terms
I was introduced to many terms and concepts related to the OpenSource community when I started contributing. For instance, CI(Continuous Integration) tool, RSS feeds, and much Git-related stuff.
Let’s explore git pre-commit hooks.
Git pre-commit hooks:
Git provides hooks for events such as commit, push, receive, update, etc. The Git hook feature is built-in, no need to download or install anything. You can check these built-in hooks by running in
ls .git/hooks in any git repository.
Pre-commit hook runs before typing the commit message. It’s primarily being used for linting or running tests to make sure everything is working. Pre-commit hooks are very helpful in maintaining the coding standards and productivity also as many of the suggested lint changes can be fixed automatically. It plays an essential role when multiple people are working on the same repo. The team can make sure everything goes to the repo passes the checks and balances put in place by using pre-commit hooks.
Here is the list of Git hooks: https://githooks.com/
The expert in anything was once a beginner.
So, let’s begin our journey in the OpenSource community and embrace the struggles to become an expert.😊
Thank you for reading.🤗