What Of 5W1H - What is Open Source

2022-07-12 10:42:23
ZenTao ALM
Original 842

The American political communication scientist Lasswell put forward the 5W communication model. After the continuous application and development summary of later generations, a set of gradually mature "5W1H" systems has been formed. That is, questions should be raised and considered from the following six aspects for the selected projects, processes or operations: reason (why), object (what), place (where), time (when), personnel (who), and method (how).


This series of articles is based on the 5W1H system. Let's talk about open source issues.

What is Open Source?

Open source, also known as open-source code, refers to a software release model, a working model based on a decentralized, self-organized software development model. In this mode, the most fundamental meaning of software being open source is that the code is public, and anyone can view, modify, and use it. The opposite of open source is closed source code. Closed source code is ordinary commercial copyright software. The code is closed, and only the author can see it. If something goes wrong, only the author can modify it.


Open-source software is software that has open-source code. We would attach the software's source code when open source is released, and users are authorized to change, spread or secondary develop it.

Image Source

Let's clarify some misconceptions about open source.

Open Source Does Not Mean Free

Open-source software and free software are two concepts. Open-source software opens source code and allows users to change, spread, and secondary development. Free software is provided to users for free, but it does not necessarily disclose the source code, nor is it allowed to modify or re-release at will. For example, we can enjoy using Facebook, Instagram, and the most commonly used software. Still, if we add or delete some functions or even publish them on the Internet for people to download and use for profit, then we will repeatedly explore on the edge of breaking the law.


Of course, most open source projects are free, but "free" is not part of the definition of open source. Some methods can indirectly charge for open source projects through dual licensing or limited functions while still abiding by the official definition of open source.

Open Source Does Not Resist Business

Open-source software is not resistant to business. The purpose of open source is to share, but not to do charity. Open source is altruistic. However, proprietary or private software is egoistic, and the open-source business model is self-centered. A generous open-source and egoistic business model can contribute to open source. Specific profit models include charging for technical support, training, advanced functions, cloud services, etc. Different software and fields have different profit models, but all models are based on the number of users. Only when the number of users reaches a particular scale can it become a commercial model.


Commercial open source reduces software defects and enriches software functions through more people's participation. At the same time, it also avoids a few people leaving some improper back doors in the software. Open-source software will eventually feed back to businesses, allowing commercial companies to provide users with better products. Back-end open source projects are the easiest to commercialize. The closer the software to the underlying facilities, the easier it is to commercialize open-source.

Open Source Projects Do Not Represent the Highest Code Quality

The essence of open joint development is to ensure that other participants cannot hide low-quality code, bugs, and other problems, and all code will be analyzed and judged. However, some inexperienced developers and code reviewers' negligence can lead to not-so-good code being submitted. There are also open source communities that engage in inefficient discussions, and under different demand situations, they make final decisions that are sometimes the result of compromises.


Similarly, anyone can provide code for open-source projects, which does not mean that the quality of open-source code is poor because most of them have passed the threshold and review screening.


So, in general, the code quality of open source projects is not the best, but it is also quite good. Moreover, good projects will live longer because the open-source community is filled with talents. Under such survival of the fittest, the code quality for projects that most people can notice also rises.

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