Hacktoberfest Touchdown!!!

Overview

  • My initial thought
  • Initial Challenge
  • PR 1 – Adding test for fsPromises.symlink
  • PR 2 – Insertion sort in C++
  • PR 3 – Writing JavaScript Tutorials
  • PR 4 – Minimum no. of merge operations to make an array palindrome
  • PR 5 – Change Modal Font Size
  • My final thoughts

 

This is the final blog post for Hacktoberfest and I will be talking about all my proud moment.

 

My initial thoughts about Hacktoberfest 2018

It was my first time hearing about Hacktoberfest and it amazed me how people around the world were connecting to code. I was super scared before starting this amazing journey of open source development as I had barely worked on creating pull requests on GitHub at that time. But I was still determined and hoped to successfully participate in Hacktoberfest. Without wasting any time, I jumped onto digging issues on Oct 1.

 

Initial Challenge

Now the first challenge I faced was to find an issue to work on. I looked through hundreds of issues and repositories for the first few days but nothing seemed to work for me. This really put me into pressure. I came up with a idea to work on a project that I had worked before. I chose to write tests for Filer. I had already written test for fs.Promises.truncate(path[,len]) in September 2018, so I was feeling confident to work on this repository. So here is how I worked on it.

 

Pull Request no. 1

Adding test for fsPromises.symlink

Link to  Issue – Pull request – Blog – Repository

1

I wrote a test to check any errors that occur if part of the parent destination path does not exist. The great thing I learned from this PR is how to fetch new work done on a  GitHub repo.

The contributor requested some changes on my pull request where I had to remove some code that was unnecessary and add a newline at the end of the file. After fixing these minor changes, my PR was merged successfully.

 

Pull Request no. 2

Insertion sort in C++

Link to  Issue Pull request Blog – Repository 

This repository is a giant collection of algorithms & design patterns. I contributed by writing the insertion sort algorithm in C++. I really enjoyed working on this project as I love writing code in C++. The program ran smoothly and I attached a screenshot in the PR description.

screen shot 2018-10-05 at 11 30 33 pm

The contributors were actively replying back to my comments and my PR was merged successfully by the contributors of the project.

 

Pull Request no. 3

Writing JavaScript Tutorials 

Link to  Issue – Pull request Blog – Repository

Before starting the Hacktoberfest challenge, I wanted to work on a meaningful documentation. By meaningful, I mean that it actually is helpful rather than fixing a typo in a documentation. Fortunately, I got my hands around this JavaScript tutorial. I wrote the tutorials for Beginner’s guide and Basic syntax for JavaScript for the website, Codev.

This tutorial looked easy, but it demanded a good amount of research. It was tough to chose what to add as there are so many basics for JavaScript. I sticked with answering some introductory questions such as:

  • What is JavaScript?
  • Why use JavaScript?
  • How to add JavaScript?

Additionally, for the basic syntax I discussed about:

  • JavaScript Values
  • JavaScript Operators
  • JavaScript Expressions
  • JavaScript is Case Sensitive
  • JavaScript Comments

This PR helped me to brush up my knowledge about JavaScript and I enjoyed it thoroughly. This PR was also merged successfully by the repository maintainer.

 

Pull Request no. 4

Minimum no. of merge operations to make an array palindrome – JavaScript 

Link to  Issue – Pull request – Blog – Repository

I would say that this was a very challenging issue of my Hacktoberfest journey. First of all, it took me a couple of days to dig through a repository which attracted me. Secondly, I had limited experience with writing algorithms in JavaScript.

I had to write a function that calculated the minimum number of operations required to make an array, a palindrome using JavaScript. This how the function must work.

Input : [15, 4, 15]
Output : 0
Array is already a palindrome. So we
do not need any merge operation.

Input : [1, 4, 5, 1]
Output : 1
We can make given array palindrome with
minimum one merging (merging 4 and 5 to
make 9)

I have discussed the algorithm in detail in my blog for PR no. 4 of Hacktoberfest 2018. One great thing about this issue was that it was explained very well. The author was precise with the program details provided.

 

Pull Request no. 5

Change Modal Font Size

Link to Issue Pull request – Blog – Repository

Since the beginning of Hacktoberfest, I wanted to work on a issue related to front-end of a website. This issue was for my chance. Here the author did not like some text on the website and wanted to change it.

I have mentioned in my PR 5 blog that how it was a learning journey about finding the exact location of the error in the code.

Screen Shot 2018-10-28 at 11.49.01 PM.png

I changed the font-size from 1.5vw to 1.1vw for the author names. This change was minor but it gave me a great learning experience.

 

My final thoughts about Hacktoberfest 2018

I was scared in the beginning, but once I started working on issues, I starting loving it! Open source development and Hacktoberfest has been one of the most exciting coding challenges I have ever been in. I learned a lot of new things about GitHub and open source. I am confident that I can contribute more to the open source community.

Here is a list of few things I learned during Hacktoberfest 2018:

  • Fetch changes from remote on GitHub
  • Properly document issues and PRs on GitHub
  • Research and write tutorials
  • Crack new algorithms
  • Hunt specific code in a huge application
  • Perform basic Github operations like clone, remote, rebase, fetch, etc.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s