Week 6:Choosing a project

What an exciting week in Open Source! Not only we were fortunate enough to hear from Vicky Steeves again, but we also had the opportunity to really dive deep into some cool open source projects that we could potentially contribute to by the end of the semester.

Another Great Guest Lecture

On Monday my peers and I were joined by Vicky Steeves who gave an interesting lecture on Open Source Licensing, Research, Reproducibility & Software Preservation. I was especially intrigued by the preservation piece because I did not know it was such a concern. I learned from Vicky that 80% of research from the 90s is gone forever and this is potentially worse for code. It is essential to not only preserve code, but also the environment the code runs on.

There are 3 major ways code needs to be preserved: technical, legal and social. Organizations like the Software Preservation Network take care of the legal aspect by ensuring long term access to software. Technically services like “Emulation as a Service Infastructure” exist to load up outdated software. As someone who is about to graduate and hopefully produce a bunch of code at my job and in my personal projects I am really glad I got to hear from Vicky. Code preservation is extremely important and should be talked about more often.

Project Deep Dive

This week I had the opportunity to explore open source projects more deeply. Last week I did look at projects like OpenEMR, but I did not really read through the code or see how frequently people contributed. This week however, through writing evaluations I really got a sense of different projects: how inviting their community was, how active contributors (both new and old) are, and if I could actually see myself contributing to the project.

The first project I was assigned to evaluate was SugarLabs which supports Sugar, a collaborative learning environment designed for children so they can interact with computers in an easy, flexible way. Completing this evaluation allowed to look at different aspects of a project that I would not have known to look at before. For example at one point we had to calculate how long issues stayed open. This gave me a great indication of how responsive SugarLabs was to people who wanted to contribute. While this information is super helpful, I personally would not have thought to seek this out. I also was asked to read through the interactions in the issues and the pull requests which gave me a sense of how open the SugarLabs community was to newbies.

Overall although the SugarLabs community is super responsive and willing to help newbies I was not particularly drawn to their project. My python skills aren’t that strong and installation took a while because I had to set up a virtual machine. However I do encourage others who may like this project to check out my evaluation.

For my next evalution I decided to check out p5.js. Unlike SugarLabs, I can actually see myself contributing to p5.js, and not just because I understand Javascript way more than I do Python. p5.js is Javascript library that provides artists, designers, or anyone who wants to create with a platform to draw. I have played around with the actual program and I think it’s super interesting and fun to use. I also think the community is very responsive and warm to newbies. I went into this course thinking I was going to contribute to a Swift project, but I can also see myself contributing to p5.js.

Final Thoughts

As the class continues, I am super greatful for the amazing guest lectures and opportunities to contribute to the tech community. I look forward to actually contributing to a project as we pair up this week.

Written before or on March 8, 2020