I read about Hacktoberfest on Yii 2 Twitter group. From getting confused to is it about hacking, to knowing what is PR, to start contributing a little and finally to opening my own repository ows-ali/Hacktoberfest dedicated for Hacktoberfest exclusively.
Beyond my expectation, my repository got:
- 80 Contributors (Around half lot of them were those who made their first ever contribution)
- 514 Commits
- 105 Forks
Finally, on 27th October since I had already completed more than 5 Pull Requests, I received the email (I did not wait to write article after receiving my shirt because I wanted to write all memories as soon as possible before they get blurred)
I have used Github before and already knew its basic commands since I have maintained some projects on Bitbucket. But I did not use it as open source platform before as you can see in the first image. Only in October I have been contributing consistently and will take this further Inshallah. During this month I learnt a lot of things that are worth sharing.
Issues, PR, Merging, Closing and Reverting a PR
Learnt the most important components required to contribute on open source projects i.e. Issues and PRs and how labels support the issue tracking.
Learnt about wonderful bots on Github. And used the bots (with the contribution of others of course to write messages) that welcome and appreciate the contributors when they create an issue, make their first ever PR on my repo or their first ever PR is merged on my repo.
Files like PR Template, Issue Template, Contributing, CodeOfConduct
Before participating in Hacktoberfest, I was not clearly aware of the need and concept behind these files but now I appreciate the repositories should have these files and I will try to make these files in my future repositories as well.
If you are a beginner in Git and Github, you can learn the basics on my following article:
Since it was my first repository opened for Hacktoberfest and my plan to improve my own learning, I knew that mistakes would be inevitable. So, it happened of course. Here are some of them.
Structure of files kept on changing
Initially, I started accepting contributions from those who have code on HackerRank only but seeing the interest all around the world I decided to accept others code as well so i had to make a folder for HackerRank and asked to make a new folder if they want to add code from a new platform.
Besides that I created issues asking contributors to change the README file a lot of time to make it look better. You can see below how it started and how it looks now.
And finally to this:
PR and Issue Templates were not defined earlier
It is a great way to remind people to check if they have fulfilled all the requirements of the PR or not. A lot of times I had to ask them that they have forgotten to add their names and info in README file.
During participating in Hacktoberfest, I also started using Twitter more and I came across some great trends there.
- #100DaysOfCode (Interestingly I have also started this challenge but since I do not know whether I will be able to complete it or not, I did not mention it and you don’t know it)
- #momscancode (A great initiative and startup to beat imposter syndrome faced by moms. If you are a busy house wife and want to learn coding then this is the best opportunity to learn with fun and other moms)
I also came across a lot of learning platforms which are great for the beginners as well as the experts. I learnt over there, build projects there, fixed issues and contributed something in their repositories as well. Some of those platforms are
- FreeCodeCamp (the most active, beginner friendly, user friendly, and completely free platform where anyone can learn Full Stack Web Development even from 0 experience in programming literally. I am also on my way to gain a certificate of Api and Microservices)
- TheOdinProject (Great for learning ROR)
- Exercism (Great for learning languages and getting your code reviewed from mentors)
I started contributing to Github, my October went almost all green and this is just the beginning. I will be doing a lot on open source from now onwards, to learn and grow myself, and to give back to the society. If you are looking for similar fun filled activities, I will recommend you to check the following
- 24 Pull Requests (similar to Hacktoberfest but in December)
- GSOC (If you are an undergrad student then this is a great opportunity for you to work on open source with big companies and earn some cash as well)
- Google CodeIn (If you are pre university students then this one is great to expand your coding skills)
- TheOdinProject (If you want to learn web development on ROR platform, from 0 to job ready, this one is great)
- MomsCan:Code ( As mentioned earlier, if you are a mom you can learn with other moms wherever you are)
- You can also earn cash prizes, T-shirts and other souvenirs by participating in the online coding platforms like TopCoder, CodeChef, HackerRank etc welcoming all skill levels and all programming languages.
If you liked the article, learnt something or found yourself motivated then you can appreciate with claps.