DEV Community

Hyunjin Shin (Jin)
Hyunjin Shin (Jin)

Posted on

Hacktoberfest - Week 1

Links

Repo that I worked on
Issue
Pull Request that I made

Description

This post is about Release 0.2 for OSD600 course at Seneca College.
For Release 0.2, the students were required to participate in real world open source development, and there was a good opportunity for us. In october, every year there is a Hacktobefest[https://hacktoberfest.com/] since 2014, where people can participate open source development and work together on a project. We were required to participate in this festival.

How I got to the repo.

I first started looking around issues that has hacktoberfest label; however, it was really hard to find an issue that has the label that was not taken and that I was able to solve. I was wandering around github, and I found an express.js github account. However, it didn't have hacktoberfest label, but I was just curious and I thought that it would be a great opportunity to learn deeper about express.js, so I looked around the repos. The main repo was huge and daunting. However, there were many other small repos such as cors and cookie-parser. I took a look at them and the issues. And there was one issue that looked simple and looked like I could work on it. I left a comment asking if I can take the issue. However, it was already taken and there was an PR for it

Process

Although it was already taken, the issue inspired me. I thought that I could do a similar thing. So I created an issue that is simliar in a sense that it would make the repo more modern and make the project future-aligned. So I created an issue for replacing var with let and const, and after I finished the task, I tested it and made a PR. However, a guy left a comment on my issue. He said, it could have problem with older version of node.js since package.json says this module(cookie-parser) supports older version of node.js so if I just simply replace the tokens, there could be a compatibility problem. I was shocked at how stupid and naive I was. I didn't think about the problem at all. I just simply thought like "I can just replace the old token var with the newer and more recommended tokens, and then everything and everybody will be happy." After recovering from the shock, I left another comment asking maintainers if there is any possibility of dropping supports for old versions. The maintainer answered that actually they are considering it, so I did some experiments with upto what version const and let would have no problem of compatibility, and left screenshots of my experiment results. And I am waiting for the following discussion or merge. I think it will take a long time to get it accepted since it is already very stable project and is almost settled with only few issues.

Reflection

From this experience, I learned a lot about compatibility and learned that I cannot just simply replace some syntax with newer one. As a bonus, I also learned about how to download, and how to swich different node.js versions using nvm. Although my PR is not accepted, it was a precious experience.

Top comments (0)