Friday, December 6, 2019

Wrapping Up Open Source

Wow! How time flew by these past 4 months in this last school semester. This open source class I am taking is coming to an end and it has been a tough and challenging experience. Since the start of this class I have made 8 pull requests, 2 for my release 0.2, 4 for 0.3 and 2 for 0.4. Its crazy because 8 does not seem like a lot but the constant searching for issues and learning new environments and languages is super challenging.

Nov 17 - 23
This week I was looking for new issues to do my 0.4 release and was still working on my first pull request for the Telescope repository. In the beginning I was very confused about what to do and scared to ask for help but ultimately had to ask my professor for help and he clarified a lot of things. I was researching how to implement my pr as a route and still trying to get used to git rebasing and merging conflicts so I could keep up with the new changes in the repository

Nov 24 - 30
This week I finally got my pull request working and merged. It was a tough because in the beginning  I thought it was easy but I did not really understand the context of how to use the opml generator until I talked to my professor again and he helped me a lot. Merging my pr lifted a lot of weight off my shoulders since it was 2 weeks under review and working on it even though we had a 3 weeks for each pr. I always struggle to manage my time and tend to do things late and this class is teaching me a lot about time management. I was able to find my second issue for telescope and I started reading into that.

Dec 1 - 6
This week I worked on Microsoft React Native again and worked on an image rendering issue. The issue (https://github.com/microsoft/react-native-windows/issues/2635) was to encode and decode progressive image rendering since it is only available on android. I still have no idea what to do so I hope to communicate with the maintainers and get some feedback when I push my code.

The issue(https://github.com/Seneca-CDOT/telescope/issues/420) for Telescope was not too hard this time. It was 2 files that both used the reading level module and my job was to read through both files to determine which file was needed and see if I could combine them into one. In my pull request(https://github.com/Seneca-CDOT/telescope/pull/438) I came to the conclusion that I could delete one file and its test completely since the other file did exactly what the deleted file did and more. My pull request is approved but we are waiting for the contributor who wrote the deleted file to see if they are okay with it and if we need their code since he knows it the best.

Final Thoughts
There is a 2nd part to this class next semester but I do not think I will take it since this course was already hard for me as I was under pressure to complete pull requests that I had no idea how to do by a certain date. I liked this course a lot, but I guess I was not ready to fully commit myself to setting aside time to find good issues and find repositories I like. I worked on a lot of JavaScript and HTML code since I know that best but I feel like I should of stepped more outside my comfort zone and tried to learn a new language like Python or C#. I would definitely recommend this class to my classmates since I do believe it is a great learning experience, but for me, I think I should of taken in my 7th semester since I would not have as big as a course load and maybe would of been more mature to really take this class to heart and commit more effort into this. The professor is great though, I do wish he teaches more classes since I feel like I learned a lot from him and especially about Git and working in big projects.

Its been a fun and bumpy ride, but I do believe I can say I genuinely enjoyed the class, it was tough but it opened my eyes to a lot of technology out there and how one simple repository can turn into something big. Maybe one day in the future I will be able to do something like that. First I gotta do a lot of growing up to do as a person and as a programmer.

Bye... for now. 

Tuesday, November 19, 2019

Contributing to a class project


My open source experience has been a little rough. I have not put in as much time and effort into my projects as I am struggling to meet deadlines.  My open source class requires me to find an issue in an internal project that my whole class is working on and another issue in an external projects.

One of my goals for the external project was to tackle something completely out of my field in a big repository. The issue I found (https://github.com/microsoft/react-native-windows/issues/3595) was to add support for device orientation for windows react native that Microsoft is a part of. The maintainer was very helpful in clarifying what needs to be done and what I should do. I tried my best(https://github.com/microsoft/react-native-windows/pull/3679) to implement a way to see if the device orientation was changed and tried to fire an event and do not know if it is correct. I hope some of the developers provide feedback.

My internal issue (https://github.com/Seneca-CDOT/telescope/issues/64) was to add a function to generate an OPML file from a list of feeds. I was very unsure how to approach this since the project itself was very new and I had to use other peoples code to help write my solution. I was suggested by my professor to use a built in node package called OPML-Generator that automatically converts the list of feeds into a OPML file as long as the formatting is correct. The pull request (https://github.com/Seneca-CDOT/telescope/pull/237) I made tried to incorporate code that was made by a classmate that imports the feed list and code from another classmate that gets specific details from a blog post. I tried to incorporate all that but I am not confident in my code since I did not put enough time to research and test my code. I am currently trying to fix it up and merge it so my classmates can use it and be a part of this project.

I was very stressed through this whole assignment, I struggled a lot to write this code that I do not think is correct and fixing an external project was very difficult too. I hope to set aside more time and ask for more help in the coming weeks in order to complete this project.

Thursday, October 31, 2019

Hacktoberfest 2019 Issue #4

Hacktoberfest 2019 is almost done and I have done my 4 pull requests! It was a very interesting month of finding issues and bugs and learning how to fix it and research about new languages and techniques that other developers use.

For my last issue, I have found a voting platform for the community driven game called Forged Alliance Forever. You can vote on what maps you want to put in the map pool for each month and the results will be shown after the voting ends. The issue (https://github.com/FAForever/faf-voting/issues/5) was to create a login page for users to log in with their FAF account.

The pull request(https://github.com/FAForever/faf-voting/pull/12) I made is just a front end login page that fits in the theme of the rest of the website. It sends the users username and password to the FAF back-end where it will be integrated there. I submitted the pr without adding the functionality for the back-end since the developer said he only wants a button to login, but I might have to update it later if he wants that implemented.

Hacktoberfest 2019 has ended for me and I have done 4 pull requests. This has been an interesting experience for me since it was my first time looking at other peoples code and modifying it, and I liked the idea of contributing to many projects. I think I will still continue to look for more projects on my own time and try to learn some more coding languages and skills.

Saturday, October 19, 2019

Hacktoberfest 2019 Issue #3

Another week of Hacktoberfest in the books, another pull request done. It is week 3 and looking for issues is still pretty difficult especially with exams in the same week as week 3 so it was hard to find the time to get an issue.

The issue I found has been made by an Indonesian developer who wanted to set up an example repository for HTML and CSS files for people in Makassar, Indonesia. I found this to be really funny because my background is Indonesian but I was born here so trying to translate from Indonesian to English to understand his issue was pretty tough. Luckily for me, google translate is a great tool to have =D

The issue (https://github.com/developercirclesmks/all-about-makassar/issues/8) I found was pretty simple as have my issues for the past 2 weeks have been. It just asked to make a good navigation bar for other people to see and use as a template or learning example. For my pull request(https://github.com/developercirclesmks/all-about-makassar/pull/26), I made a simple navigation bar that just puts all the options at the top and an additional features like a drop down menu and made the table responsive.

Lastly, I hope for my last week of Hacktoberfest I find an big issue I enjoy so I can learn something new and truly understand how it feels to contribute to a open source project. One of my friends did a issue for the microsoft calculator which was pretty cool so I hope to find something big like that. Thanks for reading! 


Saturday, October 12, 2019

Hacktoberfest 2019 Issue #2

Week two has come and gone, and another pull request has been done. I was trying to find a JavaScript or C++ issue that I would be able to solve but I did not find one I was comfortable in doing. It took a long time to find one but my open source professor just said to find an issue and just dive in and do it! Unfortunately I did not listen to that advice as one of my friends gave a issue to work on and I was able to do it.

The issue (https://github.com/a3qz/hag/issues/72) I was able to do was to add more flavor text to a dungeon crawler video game called Hag. The game is written in C and is a complete game that just has some bugs here and there. There is 10 floors to the dungeon and each time the player arrived at a new floor, text would popup to describe the story and I had to update that text and make it a very interesting story. I had to really go deep into my creative thoughts and imagination to create a riveting and fun story and fits into the lore that the original developers created.

I submitted pull request (https://github.com/a3qz/hag/pull/106) on October 11 2019 and have not been updated yet if they have approved my pull request. This issue was not too hard but it was an improvement from my week one issue since that one was just fixing a typo. Although I did find it interesting that a simple (sort of simple) game needs many files in order for it to run. I hope the next issue I find is either a JavaScript or C++ coding issue that is within my level.

I will continue to update my progress and hope to learn more things for the 2nd half of hacktoberfest!

Friday, October 4, 2019

Hacktoberfest 2019 Issue #1

Hacktoberfest 2019 has already started this year and I have been combing through many issues to solve. In my previous post I said that this is my first time participating so finding doable issues was very challenging and I had to look over the course of many days.

I found a simple issue (https://github.com/digitalbootcamp-paul/soup-recipe/issues/1) that needed a simple typo to be fixed (https://github.com/digitalbootcamp-paul/soup-recipe/pull/5). It was very straight forward and did not need any previous knowledge of any coding languages. I learned that finding doable issues is very hard and that I need to practice my coding skills in order to help more people. My first issue was just a stepping stone into the open source world and I believe my next issue will be a much more meaningful fix.

Friday, September 27, 2019

Hacktoberfest 2019



Hacktoberfest 2019 is almost here and this year I will be participating in it! It will be my first time participating in an event like this and I am looking forward to it. I am a little bit scared to be contributing to other people’s projects because I could make a mistake or not even be able to help anyone at all. My open source class requires us to find a couple issues and do at least 4 pull requests in Hacktoberfest. I do not know if I can find at least 4 issues that I can help with, but I am excited to try.

I have set 2 goals for myself that I will try to achieve during this event. The first goal I set for myself is to improve my skills in React and JavaScript. I found a couple issues that I might be able to solve during Hacktoberfest.

The first one I found is one that might be too big for me to attempt but it piqued my interest, https://github.com/esfiddle/api/issues/1 . It is about creating different routes in React using JavaScript which is exactly what I want to work on.

The second issue (https://github.com/react-bootstrap/react-bootstrap/issues/3940) I found is something a little smaller, it is also using React and the issue is that it the id cannot be set and this issue will help me learn more about React.

My second goal is to learn a new language, specifically Python because my capstone project for school needs to be able to connect front end and back end logic using React and Python. I want to learn Python so I can contribute and help my teammates more.

Since I do not know anything about the difficulty level of Python, the issue I found (https://github.com/mayukh18/BlindChat/issues/2) had the beginner tag and did not sound too hard so I might try this issue. I will try to learn some beginner theory and practical Python programming before attempting this.

Another issue (https://github.com/Cloud-CV/EvalAI/issues/1543) I found is about passwords, how spaces are allowed but once it goes through, the function will trim the spaces and the password will now change. This issue seems a little bit more challenging so it is something I will attempt after I get more comfortable with Python.

I will continue to update my progress during Hacktoberfest and will let you guy know if I attempted/completed these issues or moved on to something new!