Week 1:Time To Start Contributing
One of the reasons why I love being apart of the technology community is how collaborative and willing people are to help each other. Over the years, I have been able to leverage outside tools, existing technology and have had access to numerous resources that have allowed me to build my own apps, websites, and tools. While I do enjoy working on my own projects, I have come to understand and appreciate the open source movement where we are all working together towards a common goal. I want to contribute to the community that has helped me grow as a developer which is part of the reason why I was interested in taking Open Source this semester.
As a developer, I have also become accustomed to working alone most of the time. We are taught in our beginners courses to never consult with others when we are coding. For a change of pace, I wanted to take Open Source because I actually enjoy working with others, but I do not think I have developed the skills yet to effectively collaborate on a technical project. I am taking this course to challenge myself in that regard so I can learn how to work together on projects. I view Open Source as the perfect opportunity to strengthen my collaboration and organizational skills because to me Open Source entails not only a group effort, but a group working together efficiently. It is not about claiming the project and taking over, but rather doing your part and making sure your contributions are approved by the group and move the project in the right direction. I am excited to consult with others and make an impact that others can appreciate.
Open Source does have very “loose” rules I would argue which makes it great for collaboration and does not put a limit of people’s creativity. However with these loose rules, I can see how people could take advantage of the community by leverage software for “evil” as we discussed in class. Since “evil” is subjective it is hard to control this and I am personally not sure what the solution should be. On one hand we should encourage developers to contribute freely, but on the other we do have to keep in mind the impact our code has on people and society.
While I have not contributed to open source projects in the past, a number of them have helped me in both my technology career and my hobbies outside of computer science. In my free time I record a podcast and I like to use Audacity, an open source audio recording and editing software to edit what I record. Audacity is always improving because people are always contributing to it, and hopefully this semester I have the opportunity to make it better as well. Over the summer I also coded in Typescript, an open source programming language. It was really helpful because it reduced the number of lines of code I wrote as opposed to if I wrote my program in JavaScript. While I am not an expert in it, I have dabbled with TensorFlow as I was learning more about Machine Learning. Lastly I also use Visual Studio Code which is an open source code editor. It is my favorite code editor by far; it makes debugging as seamless as possible. I also did not know it was open source until recently, so I am very interested in looking at its source code and seeing if I can contribute in any way possible.