First Projects on the Open Source Development

This week our class assignment was to make contribution to an Open Source. The task was to review my classmate code and find either a bug or add a new feature to the Notepad app. In this assignment I had opportunity to collaborate with my classmates online. The first step was to study the code see if I can find anything that can improve that code. After that I had to create an Issue and wait for the respond from the owner of the code if he/she agree on the improvement or fixing. If she/he agrees they will assign me to solve the issue. After that i had to pull request in order to merge my branch with upstream master branch. All this task has to be done in GitHub.


This is a little description what I have done and what has been merged into master branch.

#1 Issue.

When I went through the code I notice that Notepad has a hot key feature that let the user save the code, when I run that application i couldn't see anywhere on the page information that notify user about this feature. So i fix it.

This is a snippet of the code that I modified:



More detailed can be find in the following links:
Issue 
Pull Request

#2 Issue.

In this issue I offer the owner of the app to add button that will clear the data that written to the note. Respond that I received were positive with small correction I will also have to add button that will allowed user to restore data after it's been cleared.




Issue
Pull Request

#3 Issue.

At the first glance when  I was walking through the code of Notepad I could not see anything that I can improve. Many features and very nice design had been implemented. So i decide just to play with this app because I was enjoying the way it was design. Until few minutes later I realize that Notepad show same message whether or not I entered any data and presses save. So I contact the user and offer to fix this issue




Issue
Pull Request

#4 Issue.

In this Notepad app I wanted to add feature where user will be notified that data is saved once the button "Save" is pressed and when the button "Clear" is pressed the user will see message that Data is cleared.



Issue
Pull Request


During this assignment I had a chance to receive reviews from my classmates, who wanted to improve my Notepad app.
Here some examples of what has been done

Substitute innerHTML to innerText:



This is very nice feature that update save function to log an error if any occur:







Fixing an overflow, because before if anybody will enter a big chunk of notes in my notepad it will stop adding once it will reach the bottom



This assignment help me to start understand what is Open Source and how contributions are done to it.

What have I learned:

1. How to create Issue
2. How to create Pull Request
3. How to overview issues that had been reported on my code
4. How to close issues and merge pull request to master branch

Difficulties I faced during this project:

1. Required a lot of time, because each code need to be carefully review before filing any issues
2. Everybody is different and have different requirement (this is more as a human factor but not technical)
3. Spend a lot of time to figure how to update my master branch with upstream master.
4. Learned that it is not just about to find some issue in somebodies code it is also important to convince creator of the code that my updates are important.

Link to my GitHub:

https://github.com/lozinska



Comments

Popular posts from this blog

Hacktoberfest - Issue #1, Pull Request #1

Hacktoberfest

Java Console App with AWS and JDBC as a database connector