Week 15

My Groups final progress

Coming into the project finale, I was very nervous to present our contributions as I did not feel satisfactory with our work. I was worried about our presentation even after preparing for it and working hard on the slides/structure. However, after the presentation I felt good about our presentation and I felt that we spoke about a lot of experiences that many groups when through. I was happy to share the floor with my great group members who showed their enthusiasm in our joint effort. I know that I said in our presentation that I may not continue to contribute to Bitwarden, however, due to my stubbornness and unsatisfied feelings, I plan to make at least one more meaningful contribtion to Bitwarden.

Read More

Week 14

Open Source Things…

It was intriguing to hear about the various areas where open-source practices are applied. Before I began researching different open-source projects, I reviewed a list of topics that other students had chosen. They were all quite interesting, and I wanted to find an organization that was both fascinating and impactful. I learned about OpenMotors from a friend who is very interested in electric vehicles. At first, OpenMotors seemed too good to be true, but according to their website, they have already produced and sold their open-source EV base model. However, while 3D CAD files are available on their website, only the seat and chassis models are open to the public. So, you cannot download an entire car yet, but we are getting closer to that reality. All other schematics of the EV are available from OpenMotors, and various organizations have built different vehicles using their base model, the TABBY EVO.

Read More

Week 13

The Cathedral and the Bazaar Reflection

I enjoyed reading through the lessons in The Cathedral and the Bazaar by Eric S. Raymond and listening to other students’s explanations of their choice for their favorite lesson from the essays. For my favorite lesson from the readings, I chose the quote “Often, the most striking and innovative solutions come from realizing that your concept of the problem was wrong,”  which suggests that innovation often stems not just from finding new solutions to problems but from rethinking the very nature of the problems themselves. I felt that this quote resonated the most with me because I have tackled many problems where, after a long process of multiple failed attempts, I realized that I was looking at the problem wrong. I was glad to hear from other students who shared similar feelings and agreed that the first step to solving a problem is to take note of and analyze the problem’s requirements before starting a solution. I did not change my choice of favorite lesson after the class discussion since I did not find them relatable, but it was interesting to hear other students opinions on what makes a good programmer and what makes good design.

Read More

Week 12

Tidepool’s use of Open Source

It was a privilege to have Christopher Snider of Tidepool share his insights into the inner workings of a technology company that heavily utilizes open-source principles. I found Tidepool’s mission very honorable, I wish to see more companies that follow a similar philosophy. Being a nonprofit organization dedicated to improving the lives of individuals with diabetes stands out by leveraging open source for a deeply humanitarian cause. Unlike traditional enterprises that often use open source to reduce development costs and accelerate time to market, Tidepool harnesses the collaborative power of open source to improve health outcomes. I was very impressed to hear from Christopher about the wide range of users who have forked the Tidepool repository which spans multiple continents. Despite Tidepool not accepting coding contributions they still follow open source practices by being completely transparent with their codebase and other business practices. If most companies followed in the steps of Tidepool, it would greatly improve the relationship between corporations and consumers.

Read More

Week 11

Open Source in Industries

It was interesting to learn about how open source technologies are used differently in various industries including some that I did not expect to embrace open source. From one of the videos, I learned about the term InnerSource which is the use of open source practices in propriety software development. At first, I found InnerSource to be contradictory to the principles of open source but I learned how the use of innersource helps lead companies to create open source projects. InnerSource shares the same benefits and challenges as Open Source projects as both help foster innovation, improved collaboration, and better code quality. However, both face the challenges that come with a steep learning curve for new contributors and the importance of timely feedback. To me, it seems worth implementing Open Source practices in proprietary software to take advantage of its many benefits.

Read More

Week 10

Ongoing Progress

All members in our group have successfully set up the development environment for the project. We have all also signed the contributor agreement which we have seen has blocked some Pull requests from being approved on some good first issues. We have been getting accustomed to the codebase as it is very complex with many moving parts and written mostly in a language that we don’t have much experience with, typescript. There are many parts of the project that we can contribute to such as the desktop app, website, web extension or CLI. There also are different repos of BitWarden including the mobile and server.

Read More

Week 8

Reflecting So Far

Afer taking midterm reflections realized that I have learned so much about Open Source and how much my opinion on FOSS has changed. Before even choosing to take this class, I viewed open source software as inferior to proprietary software. I could not see any advantages of open source other than standing on moral high ground. I, like many others, thought that FOSS was less secure, had worse quality, and unprofitable compared to its proprietary counterpart. However, this course has shown me the complete opposite is true, and so my opinion of open source has undergone a complete one-eighty in the past eight weeks. At this point in the class, I feel as I have learned so much about open source software but have put little use of my knowledge on any FOSS project. To be honest, when looking at the production-ready code in various projects, I still feel unprepared to contribute fixes or features to these complex FOSS codebases.

Read More

Week 7

Thoughts on Open Source Origins

The people that different groups researched in class are some of the brightest individuals in their field and I was pleasantly surprised that they came to the conclusion to help proliferate open source software rather than increase the amount of proprietary products. One individual that I found most interesting and influential was Tim Berners-Lee, best known as the inventor of the World Wide Web, made a monumental contribution to the open-source community by deciding not to patent his invention. Instead, he made the web protocols and code available on a royalty-free basis. This decision not only facilitated the rapid expansion and adoption of the web but also set a precedent for the open sharing of technological innovations, embodying the spirit of the open-source movement.

Read More

Week 6

Thoughts on Different Projects

I’ve spent the past few days exploring various open-source projects and have encountered some with truly distinctive purposes. My search primarily focused on projects developed using JavaScript or Python, as those are the languages with which I am most familiar. Currently, I am inclined to contribute to a web application project, yet I am eager to expand my skill set further. My interest in a project extends beyond its technical aspects; I aim to contribute to initiatives that serve a broader, beneficial purpose. However, finding projects that genuinely capture my interest and motivate me to contribute has been somewhat challenging.

Read More

Week 5

Social Good Videos

I mainly watched the videos “Democratizing Knowledge in Higher Education” and “Cracking the Textbook”. I was intrigued by the idea of democratizing knowledge. It makes most sense that knowledge should be free since it is the truths of our universe and belongs to everyone. Before watching the video, I was curious how one would attempt to democratize knowledge especially in higher education where prices are high and less subsidized. The video tackled this issue by focusing on the high cost of college textbook, which affects many students.

I was surprised and impressed by the opensource textbook nonprofit organization, OpenStax. Their objective to provide peer-reviewed, open-source, textbooks at a low or no cost is very noble. One impressive feat of OpenStax is their ability to modify their textbook and distribute forked versions to better fit an educator’s needs. I think OpenStax is an amazing step towards democratizing knowledge and I think that computer scientists can help further this movement. I think that the biggest challenge to open-source textbook and democratic knowledge is the fear that it is not as good as proprietary works. Building a platform that combines OpenStax’s textbooks with open-source lesson plans and videos that could also be peer-reviewed would legitimize free and open education.

Read More

Week 4

Extension Reflection

Working along two other groupmates on this extension project was a good experience with few complications and mainly straightfoward. I enjoyed how my group was able to immediately on the idea of the extension and how to split up the work. As the project progressed and some parts of our original plan had to alter, there was no trouble in deciding the changes. I have worked in very few group coding projects before but in this project I learned how important it is to initiate communication as soon as you need. In previous group work, I waited too long to ask urgent question and also bring up important discussion to move the project. I was able to work on the code of the project without confusion due to the clear line of communication and immediate response from my groupmembers.

Read More

Week 3

Github Exercise

I found this exercise to be a helpful introduction for people who are beginning to work with git. It was fun to come up with jokes and rate a few others. I had experience with git before, mainly from my previous classes including Applied Internet Technology and Agile Software Development. At one point during the exercise many people received a merge conflict when attempting to pull from the main repo. I recall globally setting rebase to false in Agile dev ops, but I never understood the reason behind it. The exercise also showed me new things that I did not spend a moment to look at such as git log, git remote -v, and git status.

Read More

Week 2

Code of Conduct

In lecture we looked at different codes of conduct from multiple sources including the Go project, the Contributor Covenant, Eclipse, Sugar Labs Project, and MatplotLib. Each code of conduct shared many similarities as they all aimed to achieve the same goal. However, some have more emphasize on different issues such as healthy arguing in the Go project, condemnation of retaliation in the Eclipse code of conduct, and step-by-step guidlines for enforcement of rules in the Matplotlib Code of Conduct. Beyond a few extra policies and some being more harsh than others, these codes of conducts have the same outlines.

Read More

Week 1

I have heard the term “open source” very frequently in my years studying Computer science but I never looked up or fully knew the definition of it. Initially, what comes to mind is that the code of the software is available to the public and I assumed that since it is accessible to anyone then it must be free. Some advantages of open source vs. closed source is the level of transparency associated with open source software. With more eyes on the product, greater levels of innovation could be acheived. There may also be a higher moral standing with open source since it must be freely accessible and not cost more than its reproduction costs. Some potential drawbacks of open source is the difficulty of getting it right with anyone accessing the source code. Security may also be a disadvantage as although many good developers will have access to the source code, some malicious actors will too. I enrolled in this class about open source software development because it seemed like it would be useful as a developer and just as a person. Contributing to open source projects will not only help you develop your skills but also allow you to make an impact on causes that you care most about.

Read More