5W1H of Open Source Why—Why We Should Get Involved in Open Source?

2022-05-25 14:27:29
Chen Qi
Original 633
Summary : Open source development in China is accelerating, and individuals and organizations have an unparalleled passion for contributing to open source.

Open source development in China is accelerating, and individuals and organizations have an unparalleled passion for contributing to open source. According to the 2020 IT Industry Project Management Survey Report, about 40% of the respondents participated in open source projects in different forms, such as developing open source projects by themselves, submitting project codes for others, developing maintenance projects as members, and donating open-source projects; In the China Open Source Blue Book (2021), The proportion of people who have participated in open source projects is 32%, with an increasing trend China's open-source ecosystem is rapidly forming.


Creating and maintaining widely used open-source projects may take thousands of hours a year. Why are developers willing to spend time and energy writing these free and public codes? Why are companies willing to let their employees write open source code so that other companies and even competitors can use it? What will individuals get from participating in open source?

Why Should Individuals Participate in Open Source?

1. Improve Code Quality

Participating in open source projects is an excellent way to improve the quality of personal code. On the one hand, open source will stimulate the "shame" of programmers. Once it is clear that these codes are to be disclosed to others, they will consciously write the code more neatly and cleanly and add more comments. On the other hand, if the project has some influence, other concerned and participating programmers will also give more advice. Individuals can learn from others, virtually restrain their code specifications, and improve the quality of their code.


Eric S. Raymond, the flag bearer of the open-source movement, once said: "With enough eyes examined, all bug will lose their hiding place. This is Linus's law."

2. Show Individual Code

An hour-long interview may only show some of the underlying basics or cutting-edge knowledge you have mastered. But if you have an open-source project, you can see the quality of your code from your long-term code. Moreover, participating in open source projects can show your love for technology and show the interviewer the open source projects you are proud of, which will be a good bonus. Developers who deeply participate in well-known open-source projects never lack work. The experience of participating in open source can help them obtain broader career opportunities and expand their career development space. As John Resig, founder of jQuery, once said: " At any time, when it comes to hiring, I care more about what candidates open source and share on GitHub than a regular resume."

3. Establish a Personal Brand

As mentioned above, the improvement of code quality and the bonus items of resume will point to the same achievement: building personal influence and building a personal brand. The most typical is Linus, the inventor of GIT. Although his self-statement is "just for fun," he is a little low-key to show off from the perspective of his reputation. Nowadays, many active technical talents are often top engineers who have worked in large companies. With the contribution of open source, they have accumulated popularity and reputation in the software community, got rid of the company label, and successfully built a personal brand.

Why Should Companies Participate in Open Source?

1. Improve Code and Functionality

Most organizations and individuals first participate in the open-source projects they are using. The primary purpose is to make the project/software more perfect and convenient for their use. Or directly build the tools you need and open-source them, often referred to as "reinventing wheels." Of course, this part of the improved functions can be used by yourself without submitting, but continuing to share is how to maximize the benefits. Because if you do not contribute your code, you may face the risk of these functions no longer working in the new version.

2. Gain Competitive and Recruitment Advantages

In the world of programmers, open source is not such a lofty thing, but the overall image is indeed positive. Open source means that enterprises are willing to build ecology with other enterprises and individuals. Generally speaking, this enterprise tends to embrace openness. So participating in open source can help improve the reputation of the organization and enterprise, and it can attract like-minded job seekers to develop together. In addition, this behavior also helps to improve the reputation of organizations and enterprises and enhance the brand image, especially the reputation among developers. The benefit is to recruit and retain talents.

3. Open Source Business Model Directly Benefits

Open source does not contradict business. The purpose of open source is to share, but not to do charity. The specific profit model includes technical support, training, advanced functions, cloud services, etc. Different software and fields have other profit models, but the basis of all models is the number of users. Only when the number of users reaches a particular scale can it become a commercial model.


Commercial open source is to reduce software defects and enrich software functions through the participation of more people. At the same time, it also avoids a few people leaving some improper back doors in the software. Enterprises can directly obtain economic profits through the open-source business model. The open-source software will eventually feedback the business, allowing the commercial companies to provide better products for users.


Gifts of roses, hand there is lingering fragrance. The most wonderful thing about open source is that you don't have to spend time solving the same problems. It would be best if you felt relieved when someone has done an open-source project. Similarly, when you see that your open source project solves problems for others, a great sense of achievement is also a great incentive.


Therefore, in addition to the above specific factors, there are also various psychological reasons for participating in open source, as well as other factors such as reducing development costs, promoting industry standards, supporting open source values, and even simply enjoying the fun of open source or giving back to open source projects. Of course, the "motivation" of participating in open source can be "not pure," and it does not pay attention to "obscurity and selfless dedication." Participation is contribution. The development of the open-source field is closely related to every developer, and there will be other joys.

Write a Comment
Comment will be posted after it is reviewed.