I knew nothing about Hacktoberfest before and came across it by chance. I had never contributed to open source previously as I felt it required one to be an expert in some programming language. I wanted to shed my inhibitions and preconceived notions and thus felt that this time was a great opportunity to get started with open source. The T-shirt and the swag was my initial motive to make 4 PR's as I felt it would give me a lot of happiness and motivation to become a confident developer.
I started researching about projects I could contribute to a few days ahead of hacktoberfest and faced difficulty in identifying good/small issues I could contribute to. Over time, I watched many web streams and blog posts about hacktoberfest and getting into open source as a beginner and eventually I was able to pick up some easy issues that I could make a PR for.
As I started creating PR's, I learnt small things like,
- keeping my fork updated with the latest updates on my upstream parent repo
- making use of CI/CD in a project
- making proper comments on PR's
I thought I would never be able to contribute to some repos maintained by companies, but I was so wrong. I made a small PR to jenkins-infra which was related to documentation.
Later, I found repos like kowainik/learn4haskell where we can create 4 valid PR's and learn some Haskell along the way. As of now, I have raised 2 PR's to this repo and I must say learning Haskell and functional programming concepts has been fun.
I was disappointed during the first few days when lots of people were commenting about hacktoberfest 2020 becoming shitoberfest and I doubted if I was doing the right thing with my PR's. I understood later that my PR's though not very great were fine and not spam PR's. I was not surprised when I came to know that most of the spam PR's were from India. To know why I was not surprised read - this. The hacktoberfest maintainers did a great job in handling these spammy PR's by extending the review period to 14 days and adding more regulations.
- Making 4 valid PR's is a piece of cake. You just need to identify repos and issues that you can contribute to as a beginner.
- Contributions need not be just code, they can be documentation work etc also.
- Most project maintainers are very much interested to help beginners get into open source, so you just have to get started. Just have a look at one of my PR.
- Once you make a few PR's and they get merged, you get an adrenaline rush to contribute more to open source.
- Every pro was once a beginner himself, so don't worry about your PR's being not so great. Don't be self-critical. Follow the contribution guidelines for a particular repository and just get started.
Today I got a mail that my hacktoberfest challenge is complete. I felt very elated and all I could think of was my first hacktoberfest T-shirt. However, I gave up on getting the T-shirt and swag as I felt opting to plant a tree 🌳 in the hactoberfest forest would make a very tiny difference to the global environmental issues we face today. It was a difficult decision to make, but I am satisfied with that. I encourage you, my dear reader, to also opt to plant a tree instead of the T-shirt and swags. Let's contribute our bit in making this planet great again.
The journey of a thousand miles begins with a single step