Week 2
Week of February 3rd, 2020 - February 9th, 2020
Honestly speaking, whenever OSSD class ends, I always feel a rush of motivation to keep going further than what the class left off at. On Monday, February 3rd, I was introduced to add-on development, specifically for the Firefox browser. I had always wanted to create an extension, but always shied away from doing so, since it seemed pretty intimidating. After class ended that day, I felt a lot more confident about it and was pretty excited to get more hands-on experience with extension development. However, this feeling of excitement died down when I was faced with the reality that I had to finish my priorities from other classes before I could even touch add-on development again. The same happened with Thursday’s class session, where the class ended off at FOSS project searching. During class, I found huge lists of possible open source video games and web applications I could contribute to, and got a huge rush of excitement from browsing through them. Like, who knew GIMP was open source? After class, I immediately made a SourceForge account and started browsing through open source software, conveniently running into familiar title names. Again, this rush of excitement died down when I was met with other class obligations soon after.
Though other classwork took up a majority of my time, I still indiscriminately sought out open source projects to work on. I am currently in a Google mentoring program set up by the Daedalus Honors program, where three computer science honors students get paired with a mentor from Google. This week my mentor, Kristen, introduced us mentees to 3 software engineers at Google, whom we learned a lot about. One of the software engineers we met worked on open source software at Google, specifically, material components designs. The engineer, Laticia, showed us a quick demo and I thought it was super cool and exciting! I told her about the OSSD course I was taking, and she welcomed me to contribute to the project on GitHub. I will definitely take this into consideration when considering open source contributions to work on.
With this being said, I can’t wait to make open source contributions throughout this semester. I know I’m speaking big ideas right now, with no real pragmatic route so far, but hear me out. These are some ways I want to contribute:
-
For one thing, I am already an avid contributor for Google Maps, but I always grew impatient with waiting for my changes to get approved. So, I already jumped the gun a little bit and was curious on trying out OpenStreetMap while sitting in a Hawaiian-themed restaurant in Brooklyn. So, I pulled up the website and filled in the details of the establishment I was sitting right in. Details about the contribution can be found in the contributions tab here. My point is, I found it amazing that my changes were in effect right when I clicked save, they were published in real-time. It felt nice to make a direct impact, and I can’t wait to make more contributions to OpenStreetMap! The information on there for that entire block was empty, so I will definitely go back one day to fill in the rest.
-
As mentioned before, I have already found a ton of possible open source projects I’d love to contribute to, like the material-components repository owned by Google. Specifically, I want to help find new bugs, submit feature requests, and add code documentation! Of course, this goes for any FOSS.
-
On top of it all, I want to contribute by writing code. Whether it be optimizing software runtime or just adding a button, I want to incorporate my programming skills into a FOSS project.
Let’s be real, the satisfaction we get from contributing to something and, thus, making an impact feels so great. But of course, there are other benefits to consider.
Benefits to my Skills
- Communication and collaboration skills are something that I admit I lack in, and I think contributions to FOSS can help me in the aspect that I may have to communicate with core-contributors to get the concept of my feature request across, or maybe I would have to thoroughly explain how to reproduce a certain bug I encountered.
- I am always looking to expand my knowledge in various tools and technologies. For instance, Google’s open source material-components-ios designs are mainly written in Objective-C and Swift, so, if I were to contribute to it, then I would have to familiarize myself with those technologies.
- I want to learn more about the best practices for coding and formatting. I know that some are specific to each company, and referring to the Google Style Guides mentioned in class, it may benefit me in a technical interview if the interviewer at Google sees that I am already programming in the way Google wants me to code in.
Benefits for my Career
- I saw Mozilla open source contributions on someone’s resume, and I even asked the Google engineers if I should put open source contributions on my resume, and they unanimously said yes! Listing contributions to open source projects can definitely boost it, and I will definitely not miss the chance to.
- To add on, if a recruiter sees it on my resume, I would be more than happy to talk about my contributions, and hopefully, that will be my gateway into a technical interview.
Benefits to my Network
- I can grow my personal network when I collaborate with the FOSS project’s community: the founder (hopefully), core-contributors, non-core contributors, new contributors, and users alike.
- I know I’m talking about this again, but I think I bonded with the engineer at Google by being able to talk about open source software with her and I am excited to keep in contact with her regarding FOSS.
Benefits from Preparation
- Not too sure about what this means, but I think it is already a given that open source contributing will prepare me for the real world. The technology industry operates in a similar way the open source community does, where, to my knowledge, users/stakeholders submit bug tickets and feature requests, just like in open source. The FOSS contribution experience is undoubtedly crucial to my growth as a developer, and if I want to keep pursuing my dream as a software engineer, I would need to absorb as much as I can from this course.
~ Jessica Wong
