In October 2021, I have joined Hacktoberfest for the 2nd time, with much more elaborate goals and commitment compared to the 1st time when I joined Hacktoberfest 2 years back. I still have the shirt from my participation back then.
Here's a picture of it together with my not so rubbery duckie.
Back then for Hacktoberfest, I only worked on documentation PRs - writing set up instructions for workshops hosted by my school and local communities respectively, and also contributed academic notes to my school community. This time, I wanted to achieve a greater impact in joining Hacktoberfest.
Before Hacktoberfest began, I have already made some plans to pause my side project(s) temporarily and dedicate only time after work on weekdays for Hacktoberfest. Weekends are only for family and gaming time. So for this Hacktoberfest, I will just be a part-timer 😄.
I am happy to say that despite being a part-timer for Hacktoberfest, I have achieved most of my goals! There are 4 aspects of it:
I have planned to tackle 8 issues for Hacktoberfest, and I did. 4 have merged so far. To visualize what I've actually done in the PRs, the Github Contribution Activity Section is really handy.
These are the open source projects that I've contributed to, and I found most of them through the DEV Community Hacktoberfest tag.
- Forem - an open-source software for building communities
- I helped to fix Forem's sidebar bug where it doesn't scroll down with you as you scroll down the page while reading an article.
- Sourcegraph, a Universal Code Search self-hosted tool
- I helped to fix a bug where the search does not rerun with the same query
- Tech stack involved in issue: React, Typescript
- Signoz, an Application Performance Monitoring (APM) & Observability tool & an open-source alternative to DataDog, NewRelic, etc
- Tech stack involved in issue: Webpack
- Super Productivity, a To-do list & time tracker for programmers and other digital workers with Jira, Github, and Gitlab integration.
- I added a feature of a keyboard shortcut to quit the app on MacOS.
- I also helped to resize logos that are used in the electron-builder's appX configuration.
- Tech stack involved in issues: Electron
- Resuminator - an open-source Single-page Resume builder with intuitive drag-n-drop & WYSIWYG editor
- I helped to fix some typos and fix some formatting of the contributing documentation while following it to try to set up locally.
- Tech stack involved in issue: Docsaurus
It was really interesting to explore different codebases and also communicate with the project maintainers to agree on a solution to achieve together. There were some hurdles in setting up some of the projects, but that's part and parcel for most newcomers onboarding dev projects 😆.
I'm proud to say that overall, I've learnt a lot more through these contributions and from my reviewers a lot more than I did in the previous Hacktoberfest 😄
Sometime into Hacktoberfest, I chanced upon a friend's GitHub profile on Twitter. I was impressed and inspired by her profile to create my own GitHub Profile too, but I decided to only do it after I created fulfill the quota for Hacktoberfest. Are you ready to see it? ✨
Here's the result 🙌
🧾 Creating A Github Profile
There are definitely some improvements to be made but I'm pretty happy how my Github profile turned out to be 🧡
- The basic profile layout is created using the Github Profile Readme Generator, which also had a link to instructions for setting up the blog post workflow github action.
- I chose to not add the trophies or git contribution stats because I didn't want to my developer profile to be graded by my github contributions. I have done a lot more work as a developer beyond Github contributions 😂 which explains why I have quite a variety of skills even though my public Github projects do not necessarily showcase that.
- Since the skills and languages were unsorted in the given layout, I categorized them so that it's easier on my readers. This process was painful 😅
- To give my profile a little of my personality, I whipped up a cover image that would represent my current identity of 🐧🌻, using an illustration that I made using Illustrator long ago. It was inspired by my bf playing nintendo switch with my toy penguin 😆
- I also added some badges to the latest articles section so that people can tell at a glance how much I've written (15 is a small number, but I think it's also not very little 🧐) and whether I'm a real person or not.
- After Eddie's feedback, I also moved the social media icons from the bottom of the profile to the top instead so that people don't have to scroll down to know how to contact me on different social media.
Speaking of social media... the 3rd goal I tried to achieve was community engagement.
🧡 Community Engagement
The goals I had for Hacktoberfest were pretty overwhelming for me initially, because I was trying learn unfamiliar code concepts but at the same time trying to be an improved version of myself - someone that I couldn't see myself being yet and I wasn't sure if I should even be that version. Furthermore, within my local communities, I didn't know of any colleagues or irl friends (most are not devs) that were participating in Hacktoberfest.
Hence, I made a goal to tweet regularly about my progress in Hacktoberfest and share my learnings working on different issues of Hacktoberfest in public. I received a lot more support than I expected from fellow techies there.
Here's a tweet that was rather highly engaged with, and it makes me feel happy that I'm helping others learn through my experiences too 🧡
Tweets like this has helped me to become more accountable towards achieving my goals for Hacktoberfest and also meet new people who have similar interests 😄 I hope to look back at these tweets in the future when I join Hacktoberfest for the 3rd time too. I encourage anyone who's working on an open source project, be it as a contributor or a maintainer, or anyone who is coding in general to join Tech Twitter too. If you do start, let me know ✨
Finally, the last goal I had was of course - writing! I wrote articles before I became active on Twitter.
I have planned to write 4 articles, and this is the 3rd article in the list.
- Before Hacktoberfest
- 1 curated listicle to help others get a head-start to know of good articles, resources, opportunity streams to contribute to open source
- During the 2nd half of Hacktoberfest
- 1 tutorial article to help open source beginners that were still having troubles to find an issue that they can contribute to, and also give them support in the form of tips to improve their workflow and mindsets
- Near the end of Hacktoberfest:
- 1 article to share my Hacktoberfest experience (this!)
While I did achieve most of my learning goals for Hacktoberfest, I've disappointed myself in some aspects.
Some unaccomplished goals
I had 1 final article that I was planning to write on, and it was meant to reflect on the most difficult PR that I've worked on. 2 interesting facts about this PR:
- It's the first PR I opened for Hacktoberfest
- Yet, it's not even merged by end of Hacktoberfest! 🤣
Hint: you can guess it from the Github Contribution Activity 👀
Because it hasn't merged, I have been feeling a little conflicted. I'm not sure if I should wait for it to progress more before writing about the struggles that I have met and whether I should even publish it. Still thinking about this. 😔
The other unaccomplished goal I had was to attend virtual community coffee chats for Hacktoberfest. The timezone differences made this really hard for me to attend any meetup, and there is literally no community events happening in my timezone for some reason 😢 An alternative to those realtime events was the discord channels for the open source communities, which I have joined a few such as EddieHub, Appwrite and so on. However, being an Introvert, I didn't feel comfortable intruding into many chats that are already happening live on discord. The most i could do was to say hi in the introduction channel. I couldn't make the best out of such community platforms that were available for networking. I still preferred having in-depth 1 on 1 conversations before moving onto group conversations with the same people.
I know that my Hacktoberfest profile pales compared to many other hacktoberfest profiles of achieving over 10, 20 or even 30 PRs. Still, this 2nd attempt of Hacktoberfest has been a really fulfilling experience for me. I have tried my best within my limited capacity to learn by doing, and also share what I learnt by putting them into words in my articles and tweets.
I am really thankful to everyone that supported me in my journey in Hacktoberfest, and below is a special shoutout to those that helped me with my contributions and GitHub profile.
Kudos to my PR reviewers & GitHub Profile reviewer:
- Paweł Ludwiczak, Suzanne Aitchison (Forem)
- Juliana Peña (Sourcegraph)
- Palash Gupta (Signoz)
- Johannes Jo (Super Productivity)
- Himanshu Garg (Resuminator)
- Eddie Jaoude (EddieHub)
Thank you for reading! If you have any questions or feedback for me, please leave them below, I'll attend to them shortly 😊 If you find this article awesome, hit the reactions 🧡 and share it 🐦~
To stay updated whenever I post new stuff, follow me on Twitter.