My First Hacktoberfest Takeaways

Alex Kong
2 min readNov 2, 2018

--

5 PRs in a month equates to roughly 1 PR a week for the month of October. In the end I created 2 PRs on README fixes, 1 PR to a terminal game clone, 1 PR to Travis CI and 1PR to xterm.js.

README Fixes (Falko, SuperMario)

Both README fixes were unintentional and done as I was attempting to fix another issue but they are a great example of how you can run into other issues as you’re fixing issues.

One Good Attempt is Worth Another (SuperMario)

Good ideas don’t always go as planned and sometimes reworking/abandoning an idea may yield a better result then continuing with the original plan. My initial attempt at re-implementing coin collection logic for a Python terminal clone of Super Mario failed because of how Mario’s location was defined. As I was updating my logic to accommodate for those differences I realized that this new implementation perform worse then the original implementation so I decided to take a different approach to the problem. This new approach I landed on resulted in a more reliable implementation that scales better then the current coin logic implementation.

A Picture is Worth a Thousand Words (Travis)

Well in this case maybe a bit less but an image can definitely help a LOT with communicating ideas. During my Travis CI PR I noticed that there was some misunderstanding between what the maintainer interpreted as the goal of the PR and the actual goal of the PR. This caused a few misunderstandings which accumulated into this post which sums up the mixup.

I promptly respond with the following post adding a picture that shows the functionality the issue wants implemented and the maintainer was able to provide me with the information I needed to update my PR.

So providing visual aids and examples when you can could help a lot.

Visual Studio Code: Regular Expression Conundrum (xterm.js)

I’ve never had much experience with regular expressions and this was definitely the first time I dealt with a regular expression of this complex even if it was rather simple after I broke apart every control group. Fixing this issue taught me a very valuable lesson that regular expressions treat the space character and the whitespace regular expression character (\s) differently and that I should test all possibilities even if testing one possibility should eliminate the other possibilities.

--

--