OSD600 Release 0.2 PR4

This is the last PR for Hacktoberfest! I can't believe how different I feel in comparison to the beginning of the month. When David first posted the requirements for release 0.2 I thought to myself "how on earth am I going to do this." Now I look back and laugh. I started the month by doing something very simple I already knew how to do. I wrote a hello world in PL/SQL This was a big deal for me because, at that point in the semester, I was still pretty new to Open Souce and did not know too much about contributing. After PR 1, I became more comfortable with git and decided to do something more challenging. I learned the Cocktail sort algorithm in C++ and added it to an algorithms repository (PR#2). At this point in the month, things were looking good however, I felt I could still "go bigger" and do something more challenging. For PR#3 I added a name to the name suggestion index. This was a huge milestone for me because with the first 2 PR's I had an idea of what needed to be done, but for this, I had no idea what they wanted. So I went for it. By studying the code, and talking to the maintainers along the way to better understand what they want, it went really well. I was able to do what was needed to be done and my work ended up getting merged! However, the most challenging (and confusing) PR was PR4! I really wanted to do some front end work and was having a hard time finding a good issue. I asked David for some help and he told me about this- "Add momentum scrolling to the result list view". Since it was the last PR and at the time I didn't even know what momentum scrolling is I want for it. I was not sure what view is the "result list view" I had a feeling it was list.component.html but I wanted to be sure so I asked. Then I waited for a couple of days and got no reply. I asked David for some advice on what to do, he told me to start working on it and usually you learn as you go! He was right! I started and was able to confirm list.component.html is what they were talking about. The next problem came when it was time to implement momentum scrolling. In the issue, he referenced this

I looked at the code pen someone commented on the issue, and couldn't get it to work in the project. The code pen was commented a year ago so I was not sure if the feature was still supported by now. In the issue, I made a comment telling them my problems.
I waited a couple of days and got no reply (as of now, still no reply). By now I started to panic a bit, October 31 was approaching and I needed to do something for PR4. I decided to ignore everything I learned about this issue and "start over." First off I noticed in the original issue the maintainer never said I HAVE to use hammer js. It seemed like he was just referencing it as a suggestion. So first I tried to find another library. That did not go so well as I couldn't find anything good that will match the style of the open-source code. Then I realized something. This project is written using Angular, maybe there is a way to add momentum scrolling using pure angular code/features? There was! I found out I can add this feature using a derivative. So that's what I did! This was a good solution as I knew quite a bit about Angular but did not know much about derivatives. I finished the code and made my 4th PR! I let them know I was able to do it using an Angular derivative instead, As of now, no one has replied to any of my comments and it doesn't look like they will. However, I think this was a good thing. I was forced to figure out everything by myself and was able to do it. Over the past month, I learned not to be so scared and take some risks, it better to try something and fail than to never try and go the rest of your life wondering "what if". I am most proud of PR3 because I went out of my comfort zone and my work go merged! Overall I am very happy I got to participate in Hacktober fest. I learned a lot, and that's the most important thing. I cannot wait for the rest of the semester to learn more about Open Source!


Comments

Popular posts from this blog

OSD600 Release 0.4 Part 3

OSD600 Lab 5

Release 0.3 PR2