Intro
Hi there! My name is Matt and I'm a software engineer by trade but also by passion. In addition to programming, I also enjoy spending time with my daughter, landscape/nature photography, and cooking (recently I've been really into baking). 😄
This isn't my first rodeo with Hacktoberfest and it most-certainly won't be my last. Hacktoberfest 2018 was the first one I participated in and I had so much fun (and learned a ton) that I kept coming back every year.
Hacktoberfest was a bit intimidating at first. I was new to open source and not super familiar with Github, branching, commits, pull requests, etc. So the first year I participated ended up being a knowledge avalanche for me. I just pretended to be a sponge and absorbed as much of it as I could. It was an excellent learning experience, made me even more excited about software development, and sparked my interest in open source contribution.
Each year I have learned a lot through my participation in Hacktoberfest and have made it a point to challenge myself more and more each time October rolls around. The experience helps me to grow as a developer and as an open source contributor.
Highs and Lows
This year, my Hacktoberfest mission was a bit different than it had been in the past. I decided to focus on reverting a bunch of work that I had done previously on my own open source project. Sounds weird, right? Why would I want to undo a bunch of my own work? Well... I have a machine learning-enabled website that started as a college capstone project for my CS degree and then evolved into an ongoing thing for me to tinker with.
One of the tasks that I started before Hacktoberfest this year was converting the project's codebase from React JavaScript to React TypeScript. I had never done a conversion of this sort before so I figured it would be fun and challenging. It was both, which was cool, but it resulted in my site being borked. Somewhere along the way I made a mistake (or 20) and the code wouldn't compile or pass my unit tests. So I ended up with a broken website which I was paying server costs for.
Anyway, to remedy the situation, I decided to basically revert all of the commits that I had made while attempting the conversion. This sounds simple in theory, but in practice it wasn't. I had to not only revert the code, but change a bunch of dependencies, update my server configurations, and modify my backend. This is what I did during Hacktoberfest.
The upside is that the mission was successful. I now have a fully functioning website, again. But the downside was that it consumed most of my free time during Hacktoberfest, which took me away from participating in other open source projects. This was a bummer to me. But at the same time, Hacktoberfest isn't the only time during the year when I can contribute to open source. So I'm not gonna beat myself up too much about it.
Growth
This Hacktoberfest didn't take me too much out of my comfort zone, for better or worse. I normally prefer to challenge myself as much as possible during the event. However, I deal with React, JS, and TS for my job. So working with these languages/libraries for Hacktoberfest was nothing new.
I did learn how to not convert a project to a new language though, which I consider to be valuable information. I tried to convert the files in place; something I now know to be a pitfall. Instead, when I attempt this again I will create a completely new repository built with TypeScript from ground up and then manually add the files in their converted form one-by-one.
Final Thoughts
I think from now on I will save my personal projects for my own, non-Hacktoberfest time. During October I will focus on taking myself out of my comfort zone to work on new open source projects that utilize languages, frameworks, libraries, styles, and patterns that I am unfamiliar with.
Top comments (0)