Week 1 - Representation in Open Source Projects

What is open source?

The first thought that comes to mind with the term “open source” is collaboration. An open source project is readily available to anyone and can be changed to meet the needs of individuals who (or will) use it. With open source development, there are greater opportunities of creating a tool that reaches a wider audience. In the tech industry, the most powerful and thriving field is Artificial Intelligence. But, it is also the most vulnerable to bias.

AI Facial Recognition Bias

Most facial recognition software is closed source, in which the program is restricted from public modification. In other words, if there is a lack of diversity among the software engineers designing the software, then the product will be a reflection of that. One notable instance would be a software’s inability to recognize a unique face. In contrast, an open source facial recognition software will be able to recognize more faces because individuals of all backgrounds would be able to contribute their perspective. Moreover, individuals would provide greater representation to their respective minority groups.

Lacking Structure

Although open source development encourages collaboration and equity, the absence of structure and organization can lead people to stop contributing. Without contributions, the open source project will “die out” and be forgotten altogether. However, if there’s passion behind a project, it will thrive.

Motivation

One motivating factor that led me to take this course was to learn and experience collaboration. From what I’ve observed, collaboration is the core of successful projects. But I’ve realized that open source development is also a means to racial & gender equity. Through open source collaboration, we can mitigate bias by voicing our communities and overall, create products with diversity and inclusion in mind.

Open Source Projects

  1. Brackets
  2. GIMP
  3. IntelliJ IDEA
  4. freeCodeCamp

Brackets and IntelliJ are open source applications that I’ve used to develop software programs. Brackets has a live preview feature that allows you to see a developing website in real time. If you want to apply styles to your html page and see how it looks without refreshing your browser every time, then brackets is for you. IntelliJ, on the other hand, is a great IDE that I use for Java-based projects. GIMP is a great alternative to Adobe Photoshop, and is equipped with several tools used to modify an image. Finally, freeCodeCamp is an interactive learning platform I’ve used when I was teaching myself front-end development.

Written before or on February 3, 2020