Fixing Issiues

Now that Hacktoberfest has started, it's time for everyone to pitch in to the open source community and help other programmers. Because this is the first "official" time that i'm going to be making a real pull request to other developers online, i thought id pick an open issue that i know i would be able to handle in a timely manner. I chose an iOS application because thats just what i'm most familiar with, and have the most experience with. The issue i chose was just a simple constraint issue with some elements on the UI of the application, that i'll be going over with now.

After successfully forking the project and cloning it to my local machine, i started to play with the application to try and duplicate the issue. Right from the beginning i started having issues because this application required me to have an account to use the app, or i would need to create an account using faceBook, which i don't have. So i started digging into the code to try and find a way to bypass the log-in screen, while still leaving the application fully functional so that i could try and fix the issue. This by it self proved to be a bit of an issue because the application was very large, with folders within folders and multiple files within those. After skimming through hundreds of lines of code i was finally able to disable the log-in screen to give me full access to the application.

Now it was time to actually find the bug, once again this was not easy because this was the first time i had seen this project and i had no idea on how all the components were split up. When i finally found where the issue was, i started to carefully read every line of code and try to understand what was going on. It turned out that there was a constraint missing from one of the UI elements that would cause the element to display in an undesirable way. After a few attempts of adding constraints, while being mindful of the original developers coding style, i was able to fix the issue. After checking the code multiple times and running tests to ensure my code works in that specific scenario, and other scenarios where that same element might be used, i was ready to make my pull request.

After i finished my part of the code and successfully pushing to my personal Git account, i made a pull request to the original developer explaining the work i did and made a note to tell the developer to contact me if he wanted any other changes. As of right now, i'm not sure if my pull request will be accepted or denied, but either way its very exciting to be able to contribute to complete strangers while getting great experience.

Comments

Popular posts from this blog

Hacktoberfest is just around the corner

Finding issues by accident

Filing issues and pull requests using git hub