Pick a Ticket, Any Ticket!

Brett Schwartz
Jul 29, 2017 · 2 min read

The open-source community is one of the top reasons I wanted to have a career in the tech industry. It embraces the collective efforts of a distributed network to improve the software product being created. These values expand beyond the actual software and into the development community itself. Throughout my short time of being a part of the tech community, I have felt the warm embrace from others in the industry. Whether it be a teacher sitting down with me to go over design strategies, my mentor spending part of his work day to pair with me, or a random hero on Stack Overflow coming to the rescue with a solution to my question; the community always seems to come through. So after six months of using various community resources to guide my growth, I felt it was time to give back and contribute to an open source project!

Trying to find an open-source project to contribute to was pretty overwhelming at first. I used CodeTriage to browse issues I could assist with. Per recommendation, I was in search of project with 50 or less contributors. The first page was filled with massive projects such as the Rails and homebrew source code so I dug a few pages deeper and came upon the faker project. Faker provides an easy and quick way to generate different types of objects in your project. I had used the faker gem many times in projects to seed my development database and thought it could be a fun project to dive into.

The issue I decided to tackle was titled “Put counts of each faker element in the documentation”. I thought it was a very interesting issue and could be a valuable addition to the project. The current documentation doesn’t provide the user any method of knowing how many faker elements belong to each object. For example, if a developer wanted to seed 75 users using a faker object they should choose Game of Thrones characters which has 1957 possible elements instead of Hey Arnold characters which only has 67 possible elements.

I solved the issue by creating a rake task that iterated through several .yaml files where the faker elements were being stored. My method took two dynamic parameters, filename and faker_type, and printed out the number of elements for each object of the faker_type. I then updated the documentation with the counts for each faker object.

Overall it was a great experience contributing to the open-source community and I am looking forward to future opportunities to get involved with.

You can view my WIP pull request here: https://github.com/stympy/faker/pull/970

Update: After feedback from the faker team, my classmate Sam Landfried is building upon my contribution. His WIP pull request can be viewed here: https://github.com/stympy/faker/pull/989

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