Starting the Open Source Phase

Eduardo Zamarrón
4 min readDec 1, 2020

Hello there, as you read in the title, last Tuesday we started a new phase, this phase is the Open Source phase, one of the most difficult phases, or at least for me has been a very complicated phase, and it has only been a week.

During this phase, we need to answer 3 research questions and make 2 contributions to Open Source Projects. About the questions, the staff gives us a list of questions so we needed to choose only one, and the other 2 questions needed to be related to the stack we chose, in my case, I chose Node.js as my principal stack and React as my second stack, that's because during the last phase I enjoyed working on the backend, and well I learned React on my Bootcamp, so that's why I left it in second place.

The question that I chose from the list was “How does a consumer get a message, (in Apache Kafka)”. I didn’t even know what Apache Kafka was, but with help from my mentor, he puts me in the right direction and I researched it. In a few words, it is a message system that uses the publish-subscribe model. I install the right environment so I can understand better how it works, please let me know if you’d like to know the answer to the question, I will send it to you in asap, I don't put it in the post because is a little longer answer and I just put it on a document, so I can easily send it to the staff and mentors.

The others two research questions I asked myself was “Why can’t we just iterate on elements of an array when we need to make a query to the DB?” and the other one “How does the useState hook works in React?”. About the first one it is solved by using Promise.all(), seems pretty easy, but it helped me a lot because with that I understand better how any iteration method works in Javascript, did you know that the .next() method return an object with 2 properties? Interesting right? well if you want to know the specific answer please let me know, I will send you the document with all the answers. With the last question, I learned more about the hooks in React, and well I learn what a closure was, and what does it does. In the document I give a little explanation of both concepts, so please let me know if you would like to know more about it.

It took me a lot to decide and elaborate my questions because we needed to force ourselves to learn new stuff about the stack we decided. It looks like easy questions but, please try to answer them understanding the underhood of each one, it will take you to explore new things, that I bet you didn’t know about it.

About the contributions to the Open Source projects, well at the beginning I was so confused how to start on that. It took me like 2 or 3 days to start reading projects and looking for issues, that was easy to start in the open-source code. I already ask on 4 different project that has the tag “first contribution”, or “good first issue”, my mentor explained to me that sometimes open-source project help us identifying which issues are easy to start working with as a new contributor, and that's because if you would like to solve the bug or apport a contribution you need to understand the whole project or at least part of it, that's why it has those tags because maybe for those, you don't need to get involved that much in the whole process of the project. Another good tip that he gave me, was that it is better to ask them if the issue is still a project, and if anyone s working on it because sometimes, can happen that the project wasn't closed, and it is already solved.

While I am writing my post, I just received an email with good news, I ask about an issue on OWASP VulnerableApp if the issue was still open, and if they could help me put me in the right direction so I can start working on the issue, and well they say that I can start working on the issue, and actually send me an overview video so I can understand better the project and the issue. Please stay tuned for next week, hope I can tell you that my pull request was accepted, and I contributed to an excellent project as it is OWASP.

Thank you so much for your time, if you need more detailing info please feel free to contact me. See you next week.

--

--