Posts

Showing posts from October, 2020

OSD600 Release 0.2 PR4

Image
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 ide

OSD600 Release 0.2 PR 3

Image
 We are in the third week of Hacktoberfest and it is getting exciting! This week I decided to work on this issue . They needed someone to add Chateau d'Ax to the name suggestion index. When I first saw this I very nervous as I had no idea how to do it. But it is PR 3, we are halfway done the course, it's time to start taking some risks! So I decided to stop worrying and just "jump in". This approach really paid off! After I let the maintainers know I wan to work on this issue I forked  the repo, made a new branch , and cloned to my local machine. I reread the issue, took some time to think about, and started looking at the files that needed to be modified. I noticed I needed to modify a file in the data/brands/shop folder (furniture.json). Adding the data wasn't so bad, the hardest part about this issue was finding the information to add. Most of the information was given in the issue: When adding the country codes there were some I could not find in the wiki the

OSD600 Lab 5

Image
 This week we learned about rebasing in Git! Rebasing is basically taking multiple commits and "grouping" or "moving" them into one commit. Before I started the lab I did the walkthrough on the OSD600 GitHub Wiki. At first, I struggled with it (kept getting errors when running git rebase master -i). Then I decided to start over again and I noticed the first time I forgot to commit some files on the refactor branch. I am happy I did this first because it made the lab go very smoothly.  Before I started the lab I took a look at my code and wrote down the improvements I was planning to make. I decided to do these 3 things: change my regular expression variable from a let to a const, remove an array I never used, and update some functions to use the ES6 arrow syntax. It's been a while since I used arrow functions so I used this resource to guide me Every time I added and tested a feature I did a git commit. One improvement that caused an error was when I updated som

OSD600 Release 0.2 PR 2

Image
I started searching for my second pull request on the Hacktoberfest website . As I was looking I found this repository . This was a collection of algorithms written in various programming languages. I have not done much work with algorithms and for this PR and I was hoping to do something with C++ so this seemed like a perfect issue. I worked on this issue , which was to add any algorithm in any language not currently present. At first, my plan was to do bubble sort since I learned that at Seneca and had a good understanding of how it worked. But, someone already did that. At first, I started freaking out because I didn't know any other algorithms. So then I took a deep breath and started doing some research. Eventually, I came across an algorithm called CocktailSort. This seemed like it was a good algorithm to try since I didn't know how it worked, I never studied an algorithm like that, it was more challenging then bubble sort, and was not present in the C++/Sorting directory

OSD600 Lab 4

Image
In this week's lab, we learned how to work with remotes in git. I am really happy we did this lab because before we learned this I was wondering how do you test someone's work before accepting their PR? First, we had to add a --ignore feature to each other's programs. This was the hardest part of the lab. I was able to add the feature to my partners and she was able to do the same to mine, but we both ran into some issues. So we collaborated with each other via ms teams and Github to fix our code. We were having a really hard time fixing mine so we had to ask out professor David. David was able to fix this but instead of giving me the solution he gave me a diff file and made me figure it out myself. I know this may not seem like a big deal but before this, I weren't so good at reading diffs so I am happy he did this as it forced me to learn. Reading and modifying the diff was harder than I expected, but after reading some articles David sent me and keep trying I eventua

OSD600 Release 0.2 PR 1

Image
The time has come to start release 0.2! For this release, we start contributing to real open source projects on Github! When I read what we had to do I was excited and nervous at the same time. I never contributed to Open Source and was scared of things such as not being able to find anything I can work on, or start working on an issue then realizing I have taken on something too challenging. What I learned after my first pull request is I was wrong! I started looking for good first issues on the up for grabs website provided by my professor. It took a lot of searching but I finally found an issue perfect for my first pull request! This repository  was working on a cli application to create almost any programming language file. I looked through their issues and found this  They wanted people to pick a language and do various things with it such as write a hello world and document how to create inline comments. I noticed they already did SQL but was missing PL/SQL. I already had some kn

OSD 600 Lab 3

Image
This week we learned how to create new branches and merge them into the master branch. First, we had to pick 2 features from the list to be added to our program. The features I decided to add where:  Make sure that the program exits with an appropriate error code. If there are no errors (all links are good), exit with  0 . Otherwise, exit with a non-zero exit code. Support  --all ,  --good , and  --bad  flags. The  --all  flag is the default, and if none of these are present, it will display good and bad URLs. The  --good  flag causes only good URLs to get displayed; the  --bad  flag causes only bad URLs to get displayed. Then I created issues on GitHub for each feature requesting they for them to be added. The first feature on the list above was issue 9   the second feature was issue 10 . After that, I made 2 new branches for each issue and started working! First I added the feature of issue 9 and committed it to this branch . When I finished that I started the next feature (issue 10