My first contribution to Pandas!
Tags: opensource, beginners, hacktoberfest, machinelearning
Published: 2022-10-19 05:07:48

## Hello everyone!

Today, I wanted to tell you about my final contribution as part of Hacktoberfest. 

If you have not been following this series, you can refer to my [first Hacktoberfest post](https://dev.to/gulyapulya/my-first-hacktoberfest-14l8) where I explain what Hacktoberfest is.

### Background

As I mentioned previously, this is my first Hacktoberfest participation. I am currently studying Computer Programming and Analysis but before entering college I was very passionate about Machine Learning. I explored it myself in my free time after high school and completed multiple courses. I also did an internship as an ML Engineer. So, the first tools that came to my mind when looking for projects to contribute to were related to ML. 

### Repo

I looked through multiple libraries and landed on [Pandas](https://github.com/pandas-dev/pandas) which was luckily open-source, had lots of issues to work on and very good activity. Pandas is a flexible and powerful data analysis / manipulation library for Python and is widely used in Machine Learning. Pandas was not participating in Hacktoberfest, so I had to make sure that my PR gets accepted and ask for the "hacktoberfest-accepted" label to be added to my PR.

### Issue

Usually, issues get taken quickly in such popular repos but I was lucky to find one big issue that was labeled as a good first issue and stored multiple related issues inside. [This issue](https://github.com/pandas-dev/pandas/issues/48855) focused on getting rid of different warnings and their causes after enabling Pylint. By the way, Pylint as the name implies is a static code analyzer for Python. 

### Solution 

I picked one of the warnings that was not already taken and started researching. First, I downloaded `pre-commit` as it was required to test my solution. Then, I read through multiple articles and documentation on the web and found [this one](https://docs.quantifiedcode.com/python-anti-patterns/correctness/method_has_no_argument.html) which explained possible anti-patterns and their resolutions about my specific warning. I checked what lines caused the warning and started going through them one by one.

### Pull Request

When I submitted [my request](https://github.com/pandas-dev/pandas/pull/49064), I received the reply from a maintainer almost right away that he approved all the changes. However, some of the CI workflows were failing. It seemed weird to me as I only changed the parts related to my issue and nothing seemed to be connected to the failures. Luckily, the maintainer reassured me that they were unrelated to my change and that he will run them again later. I waited for several days but did not get a reply, so I decided to send a little kind reminder. Everything got accepted later that day. However, I still had to ask again to add the hacktoberfest label but also got a reply and the label added very soon after. 

### Conclusion

I realized that in open-source communication is the key. So, sometimes it might happen that in the big projects you will not get quick replies, but it is totally fine to always ask for something or put little reminders if you are waiting for some action. Just always keep kind!