On my previous blog post, I expressed some disappointment at the trajectory my Hacktoberfest journey had taken. Even though I enjoyed contributing to the open source community, I wasn’t really meeting the goals I had set out for myself. I had found myself looking through hundreds of repos, looking for something – anything – I felt capable of doing, instead of working towards improving myself.

That had meant, that up to this point, I had neither worked on anything related to Python nor on software I use. While I was willing to excuse not working on python projects — with every compiler, environment, dependencies, and who knows what else I need to download to be able to code, I can feel my cheap laptop struggle more and more with each task — I could not do the same with my second goal.

Reddit, YouTube, Atom, Notepad++, Discord, VSCode, Whatsapp….there is no shortage of apps and software that I use on a daily basis that have open issues ready to be fixed. The net gets bigger if I changed it to weekly, or monthly — WordPress, GitHub, OBS; I could even focus on apps I no longer use, but I spent a significant amount of time in the past, like Tumblr and Archive of Our Own.

You would think that with so many options and possible issues to work on, I would be able to find something.

Despite wanting to be a part of a project I use, I had become very intimidated by the prospect. I kept making excuses about why I couldn’t work on any of the repos I wanted to be a part of — It was too easy, there was too much documentation, my computer couldn’t handle everything I needed to download, it was too difficult, it required too much time..

It wasn’t until a friend of mine asked if he could choose an issue for me that I finally started working.

react-native-windows

Links: Repository | Issue | Pull-Request

A picture of the issue

My journey here was less about working on difficult code, but rather to gain experience working on big projects. I had assumed that working on the pull request would be the same as my previous two, I was wrong.

When I worked on whatismyviewport, when something failed, I knew it had something to do with my code. Maybe I was missing an s, or my logic was flawed, whatever it was, it was introduced by me. This time one the other hand….

my total contribution to React Native

I added a comment and the first couple of times I ran my code, there were compiler errors. All of them had nothing to do with my comment, and everything to do with my environment. Despite reading the system requirements, I had missed that my WindowsSDK needed to be updated. After downloading the wrong version and then the right version, my code passed the tests in Visual Studio.

It was then time to create my pull request — I triple checked if there was a template or guide that I needed to follow, and then submitted my request.

In order for the request to be valid, it needs to pass 24 checks. What do the checks do? They make sure the code is up to standard, however I can’t tell you more than that. Immediately, after submitting, the test started. And half an hour later, one failed.

I took a look at the error….and I could only say “huhh??”

…didn’t I fix that already?

Unsure about what to do, I checked the help link but nothing was clarified for me. I didn’t feel like I should be touching any of the code there…So I checked the properties in the project and changed the min windows target platform to 10.0.1836.0.

I committed, and after 20 minutes, a different test failed. Great. I undid my change, and submitted again hoping to understand what was wrong. Confusingly, most of the test passed….until an hour later one was stopped for taking too long.

It took me two seconds to change the code. I touched one line of one file . It has now been two days since I started and I don’t know how much longer I will need to get my code to pass the tests

So this is where I am. Confused, lost, downloading VS2019 hoping my environment just needs updating…

To be continued.

2 thoughts on “Contributing to React Native

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