In mid-2018 I started learning Python by reading textbooks and watching online tutorials. I had absolutely zero background in computer science, but it seemed interesting so I continued to try. At some point, I decided I wanted to do a master’s degree in statistics, so I began to work on more statistics-based programming. That’s when I found SciPy. I became (and still am) fascinated by the idea of open-source software that is completely free to use and supported by a community of diligent programmers. With plenty of extra time on my hands during the pandemic, I made it my goal to contribute to a Python library. My first contribution was actually to a project called first contributions which walks you through a very basic commit and push to GitHub. That built up my confidence a bit, so I decided to tackle a SciPy issue. It was not easy. I watched several videos and guides on how to contribute to an open-source library but got stuck many times along the way! I have to admit I felt incompetent trying to make changes to this huge library, but the maintainers and community could not have been nicer or more supportive. That’s really the magic of open source. I was confused and lost, but the (largely volunteer) community was amazing.
Eventually, I managed to get a very small commit merged into the main branch of SciPy (which you can see here). Despite being, at most, a few lines of code, this was a huge landmark for me as a programmer. To my surprise though, in early 2021, a little badge pop up on my GitHub profile that said “Mars 2020 Helicopter Contributor”. I was confused. I didn’t recall working on helicopters, much less helicopters that flew on Mars. I still remember getting chills when I read that I contributed to a library that was used on NASA’s Mars 2020 mission, which involved the robotic helicopter Ingenuity. GitHub posted an article explaining how about 12,000 people received a badge indicating that they had contributed to an open-source library that was used on the mission! Keep in mind that I made an absolutely tiny contribution, but I was extremely proud to be recognized in that way.
In an even stranger twist, this summer, I’m interning at NASA’s Jet Propulsion Laboratory (JPL) which built and still flies the Ingenuity helicopter along with the other robotic space exploration missions. It’s truly surreal to have come full circle like this, from learning Python in my living room during the pandemic to using SciPy in my daily work at JPL. Here, my work involves writing statistical simulations to estimate the probability of system failures during a mission. If you’re reading this and interested in contributing, please know that your contributions to an open-source library, no matter how small, can have an impact larger than you could ever imagine. Collaboration like this is essential to pushing forward the boundaries of science. If you want to contribute, please feel free to reach out to me (@WillTirone) or anyone else in the SciPy community, and we can get you started on the right path. Last, I want to thank the maintainers of SciPy for their endless support and assistance while I was learning the basics of contribution to the library.