Posts

Showing posts from October, 2020

Release V0.2 4th PR

     My final Pull Request was on the Python-Binance repository.  This is an unofficial Python wrapper for the Binance exchange REST API v1/3 .  While building my own Binance trading bot I discovered that this library could use Web sockets to hasten the stream of information. Previously, I was using the REST API given to me by Binance, however, with web sockets I can gather information without asking for data.  Web sockets are a persistent connection between two computers that result in a higher amount of efficiency.      The pull request I am most proud of would have to be the Python-Binance web sockets pull request . This pull request allowed me the opportunity to learn about the difference in polling and scribing. This challenged my understanding of how computers can communicate between each other, I was under the impression that a computer needs input in order to create an output.  However, through this project I learned that you can subscribe to events to get notified when any d

Pump up the Jam.

 On October 19th 2020.    This week, I worked on a web scraper, while I was browsing on the python repositories on Github, I found this  issue . Web scraping, web harvesting, or web data extraction is data scraping used for extracting data from websites, such as Google. I have used web data extraction before when I was harvesting urls for a website. The repository owner for this weeks project, was looking to purchase some weights for at home workouts during quarantine. The repository owner wanted an email sent to his personal email when the scraper found weights in his price range. You can check out the implementation of SendGrid here .      Another project I decided to work on this week was  Python-Binance , this is an unofficial Python wrapper for the Binance exchange REST API v1/3 . For those of you who are not familiar with Binance, Binance is a crypto currency trading platform. It allows you to buy, sell, and trade currencies. In layman's terms it is a currency exchange. Wi

Lab 5

Image
         While closely examining my open source repository, I noticed that I had many unnecessary lines of code. Although program worked, the code was not as good as it could be. Having these unnecessary lines of code had lead my program to be prone to errors. After identifying these issues, I removed them and thus my code was concise and efficient.      Me trying to fix bugs in code     A bug was also found while inspecting my previous code. I had forgotten to implement the function that allows users to choose "-all", "-bad", or "-good". To solve this bug I invoked the function that was already declared.     The final improvement was my  terrible variable names. While implementing my "--ignore" functionality I used the variables url and url2 to hold the values of the url currently being checked and the url to be ignored. These variables had no description of the values they were holding. I replaced my old variable names with ones that accuratel

0.2V Conflicts, Struggles and Pain — All Great Things

Image
Soul Searching This release v0.2 has been a wild ride. One day, I am happy I got a contribution in to open source and the next day I am freaking out because the next contribution is due. This week my main concern was that I would not understand other people code. With the rollercoaster of emotions comes struggle, pain and a soul searching journey. It wasn't writing the code that was difficult, it was finding a project.      For this weeks contribution, I embarked upon a journey into the depts of Github. Looking at all these different open source projects, labels, and documentation. At first I was thinking about working on home assistant, an open source home automation that puts local control and privacy first. This sounded like a very cool project to work on! Unfortunately, this project takes a long time to set up, and they recommend you work on a Raspberry Pi. Home assistant inspired me to invest into a Raspberry Pi 4 for side projects. Since this project wasn't going to be

Lab 4

Image
Introduction     This weeks lab was fairly frustrating, I am not sure if it was all the environmental stressors around me this week, or if it was since I had never worked with a  git remote before. Nonetheless, the work has been completed. Heres a little gif to let you know how I felt. Picking and Filing an Issue      For this weeks lab, I choose to work on an old friends repository. Im not sure if this is considered cheating, however, I gave my friend a call to run me through how his code works. In five minutes, I had a basic understanding of his work, and was left to study his code. Since it was not my own code, I had some difficulty reading it. I created a new branch, and started cleaning up the repository to better fit my needs.      I created a pull request simplifying the code, however, no merge was done. I guess everyone has their own preference of how their code should look. After failing the first time, I decided to try again by creating an issue on his repository, startin

Release V0.2

 October 4th Two Pull Requests in one day!  1st: The first Pull Request was for lab two, in which Roger merged my Pull Request! For me, this was an empowering feeling, as it reassured me that I have some knowledge that I can contribute to the open source community!  2nd: My second Pull Request was on a random repository I found for grammatical errors. It was a very simple pull request that didn't take more than 10 minutes, however, it still allowed me to contribute to an individuals work. Once again, this merge was able to give me more confidence that I can contribute to the community, even if it is a simple grammatical error! On Oct/04/2020: Whilst browsing through the endless list of repositories, I noticed a game written in javascript. After reading their repository, I decided it would be fun to contribute to their project. Initially, I created a pull request with just a few spelling and grammatical errors. However, while working on this project I did not see anything about a Li

Lab 3

    The class of OSD-600 was asked to add two more features to our v0.1 command line tool. Out of the four options I choose to create a CLICOLOR environment variable, implement an exit code and created an output json file too , let me run you through what I did!  Step one:   Creating branches: With the help of some youtube videos, I was able to figure out how to create and checkout a branch. I understand the importance of keeping master as clean as it can be, and branched off to issue-9 and created  issue-10 . Step Two:  Researching about environment variables: Through online research I learned how to set an environment variable. The document mentioned the practice of creating an environment variable in the /etc/environment file. However, I decided to just make it global to my current project. Step Three: Creating an "if" statement that would print out colours or no colours: This task took a minute to compute, since I did not want to write redundant code.  After finding many

Lab 2 continues . ..

Image
 Today I sat down to a lovely notification, seems like Christmas came early this year, Jongwon Jang decided to fork my repo! I am trying to clone her issue to check if the changes she made work. However, as a repository manager you should trust the people you work with. This is troubling for me. I tried to clone her branch, but with no luck, I could not check. Now I am faced with a problem of if I should accept this pull request. I will get the raw file she has on her repository and copy it over to double check that the code she has written works.  On the other hand, I have little to no idea what Jongwons second feature is. User-agent. I have never encountered this terminology before, and asked for some clarification on what this feature does. How it will help my program?