Many people often see the word GNU when learning Linux. Do you know GNU? The GNU program, also known as the GNU program, explains the GNU concept for you. People who support private software usually hold the following view. Private software can provide necessary economic support for software developers. Without such financial support, no one will develop software. The logic of this view is either to accept software private or to lose software. In fact, this is a disguised fraud. Software private is not a necessary condition for the existence of software.
If we assume that "software private" is irrelevant to "Software Development", we should analyze the advantages and disadvantages of the two, which are harmful to society, instead of bundling them together, we should discard them separately.
Now let's analyze the disadvantages of software private. There are four points in total;
1. It limits the number of users of the software. Assuming that a software has been developed, all the investment in the software has been paid no matter how many people use it.) from a social perspective, any restriction on the use of software is a waste of investment.
2. It undermines social harmony. If you and your neighbors both want to use the same software, and you purchase this software and your neighbors borrow it from you, you will be in a dilemma. If you borrow money, you violate the copyright law. If you do not borrow money, you violate the virtues of mutual assistance in the neighborhood.
3. It does not allow users to modify the code. As a result, users cannot rewrite the software as needed. If an existing software cannot meet the requirement, it is likely that you only need to modify a small amount of code in the original one.) You can either re-write the software yourself or endure the imperfection of the existing software.
4. It is not conducive to software development. "I think far away, because I am standing on the shoulders of giants", but because software is private, we cannot get the original code because it is a trade secret ), therefore, each of us cannot learn from the existing software development experience. At most, we can only stand on the shoulders of people around us.
So is it because the software private is eliminated that we cannot develop the software? No, there are two reasons
1. programming is an interesting thing. There was no idea of software private in 1970s, but people also developed a lot of software. They did not think of using programming to make themselves rich out of their preferences. However, people are attracted to developing software only to get high returns. If we reduce the return on developing software, we can use free software ), things will slowly return to the past, and people will develop software out of their own interests. In addition, it is easy to support a programmer.
2. Free software is also financially secured. Hardware developers sometimes develop related software, which is usually free in 1970s. The University will also develop software. Although they will sell the software today, it will be free in 1970s. If we cancel the software private system, these universities will obviously be forced to re-develop free software. Moreover, although free software means that the software itself is free, we can charge for the service provided for the software, such as the training fee and upgrade maintenance fee. In addition, although the software itself is free, the media attached to the software still needs to be charged. By selling these media, you can also get a certain amount of income. Finally, the Free Software organization usually receives considerable donations. So even if we cancel the software private system, we also have financial support and don't have to worry about the absence of software.
Compared with the software private system, free software has the following advantages:
1. Free Software greatly improves the productivity of software development, because it can make the most use of the software and allow users to customize their own software, so that we can freely reuse others' development results to avoid repetitive work, so that students can better learn software development.
2. The private software system will introduce commercial interests into software development, which often leads to vicious competition. Benign competition means "survival of good things", while vicious competition means "survival of yourself, whether it is good or not.
3. The free software system is not a Soviet Communist. In essence, the Soviet-style Communist system is centralized and refuse to disclose information to the public. From this perspective, the software private system that controls the spread of software is the real Soviet-style Communist system.
Prerequisites and conclusions
The rights and interests of software users have the same status as those of program developers. On this basis, we discuss the system that maximizes the interests of both users. The above is the premise of my argument. For those who think that the interests of software developers are paramount, I have to say "different approaches for seeking ".
Software privatization is a manifestation of human private desires. It is a typical behavior that harms the public interests for personal gain. We are not barbarian living in the virgin forest. We live in a civilized society and people should help each other. Comrades, at least in the software field, let's abandon the barbaric actions and build a new society full of collaboration spirit!
Having understood the concept of GNU is helpful for your learning.