Contributing to Open Source

Jude Dutton
Sep 1, 2018 · 3 min read

Disclaimer: It’s important to me that I do not false advertise or misrepresent an organization’s values, so for the entirety of this blog I will refer to the organization that I worked with as the “Awesome People”.

I’m new to software engineering; however, the career path has already turned into one of those terminal-express-lateral escalator contraptions that we all wanted to sprint down as kids. So, after a year or two of getting my feet wet with JavaScript, and 7 months of intensive training with Ruby/Rails, NodeJS/Express, and Elixir/Phoenix I’m happily in a place where I can confidently call myself a software engineer.

One important aspect was missing though: contributing to open source. I’ve heard of this as a trendy thing to do; however, I wasn’t sure what the real value or appeal was. It just so happens that we had a project coming up towards the end of my time studying at Turing that necessitated we do just that.

I had found some companies that I figured would invite open source contributions, but it wasn’t until I found the Awesome People that I really felt comfortable reaching out and contributing. It was the detail with which the Awesome People provided material for their contributors and their assertion that they moderated pull requests and contributors with feedback and care.

The issue in question affected almost every page in one of the major sub-sections of their app, but it was a small change to some CSS. That being said, the real benefit for me was not in the fix, but in the surmounting of different obstacles all along the way:

  • A dependency was preventing the development application server from working.
  • The actual files were on a sub-repo to the main app, which was my mistake for not noticing.
  • The issue itself was not a problem in development, but was an issue in production.

When deciding how to handle the dependency issue, it was important to me to not just updated everything to its latest version as I was unaware of what versioning dependencies were necessary. So it took me a couple of tries, but I was eventually able to overcome the issue by specifically installing only the minor version update that I needed.

The files that were actually causing the styling issue were actually outside of the main app repository, so I had to make sure I went and cloned the right repo. This only occurred to me after I had been searching for awhile 😅. In my mind this exemplifies the experience of becoming familiar with open source software that you are just getting to know!

Finally, once I got the development environment all setup, it turns out that the mis-render was, well, not mis-rendering in development which was a challenge. As I investigated possible solutions, I had to make sure that my changes also worked in production since I could not trust the results in development for this particular issue. This was accomplished with a combination of trial and error utilizing browser inspectors and such tools.

Once that was all said and done, it was smooth sailing. Tests passed, everything looked green across browsers, and I was ready to submit my PR. I am thoroughly grateful to the Awesome People for providing such a wonderful first experience contributing to open source software, no matter how small the fix actually was. I highly recommend getting into open source contributions — it was some of the most rewarding coding I’ve done in a long time.

Jude Dutton
Welcome to a place where words matter. On Medium, smart voices and original ideas take center stage - with no ads in sight. Watch
Follow all the topics you care about, and we’ll deliver the best stories for you to your homepage and inbox. Explore
Get unlimited access to the best stories on Medium — and support writers while you’re at it. Just $5/month. Upgrade