Lab 3: Hacktoberfest Prep

In the Lab 3 of OSD 600, I will be gearing up for Hacktoberfest which runs from October 1 all the way to the end of the month.

To begin preparing for the Hacktober month, I went through the Release 0.2 documentation and came up with things I want to do and gain from the hacktoberfest. 

Getting Started

The first thing is to focus on doing good 4 pull requests. I want to work on something that either is related to testing or is a project in a language I am new at like in python, kotlin or Go.

On the other hand, I have worked a lot with Angular and like how it is really flexible. There are 1000s of angular projects and angular components that do wonders when added to a project. I do have some experience in adding fractures and removing bugs to open source angular projects.  I also want to work on a project that is aimed at running at multiple platforms.

Goals

Get to know Python more by solving an issue in a project using Python.

Python is used for everything and can do whatever you want to do with putting. It has become a Swiss army knife in the tech world. Another reason I want to get into more in python is to start gearing up to tackle machine learning within few months. Python is widely used in the world of machine learning and data analysis which are in high demand these days.

Get to know Angular more.

I have worked in Angular for more than one year and working with it was both challenging and interesting. You can make the entire front end of a large scale application or can use it to make small angular components which can be installed via npm to add features to a project.Other reason, I like angular is that it uses typescript instead of javascript, so it comes with a language that has type checking in built and will make the front end robust. It’s been a while since I worked with angular and want to get back into it to do some more interesting things with it and contributing to a project would be perfect.

Learn a multi platform language.

I have always wondered to learn swift for developing iOS apps or learn Java to develop android only applications. The answer is learning React Native. The reason is simple , react native is was more faster, lightweight and code written is simple and compatible on both platforms as compared to Angular application using cordova or Kotlin which require lots of plugins and duplicate components to make them run on android and iOS. Before using React native,I need to know React in deep. I do know react but have not used it vastly . I aim to find a project built in either React or using react native to get to know how some projects are making their applications run on both iOS and android. Contributing to them will help increase my knowledge in cross-platform development.

In a nutshell, I have to fix 4 bugs in projects that are  :

  • Coded using a language which I am new to.
  • Coded in Angular
  • Using React Native to make a cross-platform application

Now, after identifying my goals for it, I need to find the projects that can help me achieve my goals. Luckily, the documentation of Release 0.2 comes with a guide on how to find issues that fulfill my criteria.

Search For Issues

Some ways to find issues are:

Using these techniques and applying some more filters like language, sorting by newest etc. I selected some projects that had some issues that I want to work on. Those issues are:

I picked this issue cause it was something I have done before which is modifying angular components. The issue is related to a property of the component not working as it should have which might be a intermediate level of fix. I have used angular UI components a lot in the past and they are not always perfect. Fixing this issue will help me to learn how to modify an existing component to my needs. I will use my knowledge of typescript to fix this issue.

This issue is related to one of the fastest cross-platform framework which is react native. The issue is an enhancement to update props and it can cause breaking changes. To fix the breaking changes I have to visit the whole application structure which will also help me to look at project in detail. I want to learn and work with react native to start building multi platform mobile applications using minimal code. Working on this repository give me more insight into how cross-platform projects are coded, structured and implemented. React Native is still new so community help in general is limited but the repository itself have 200+ contributors and most of them are active so they will be an important source of help for me to progress forward with this issue.

This is a challenging one since I am very new to Python. The issue involves implementing a new method and then also testing it to ensure that the new method is working as intended and doesn’t interrupt the application. I basically want to work on this cause I want to start learning how real python projects work and are structured. The community in this repository is very active and I will ask them help if I get stuck which I will.

Javascript is a language which is a backbone of many things like React,Vue.js, Node.js and many other frameworks which use this language to build back end, front end and what not. There is always new things being done with Javascript and I chose this issue to get to know more how big projects use Javascript in their applications.The issue involves fixing the editor shortcuts which are currently triggering unwanted dialogs. Community around Javascript is huge and the repository itself is very active. I would rely on my on knowledge and the communities help to fix this issue.

I have to revisit a lot of stuff like javascript and angular to get started on working on any issues. I have to look and learn on how to communicate in an open source community and practice again the git commands I know so far. I might have to step ahead and do some testing of my fixes since some of issues are feature related and these features need to be tested before doing a pull request.

Happy Coding !

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

Blog at WordPress.com.

Up ↑

Create your website at WordPress.com
Get started
%d bloggers like this: