Linus's law
There are two statements that have been called Linus' law, referring to statements made by Linus Torvalds, a Finnish software engineer, creator of the Linux kernel. The first one refers to the ability to find errors when opening a program to the community, and the second one to the motivation for the development of free code.
Law of finding errors
The statement by Linus Torvalds who says:
"Given a sufficiently high number of eyes, all errors become obvious."
It was dubbed Linus's Law by Eric S. Raymond.
Every problem should be transparent to someone. The people who understand and those who solve a problem should not necessarily be the same, not even in most cases. According to Linus Torvalds: "Someone finds the problem and someone else solves it." But the point is that both tend to happen very quickly.
Linus' Law According to Eric S. Raymond
Eric S. Raymond claims that if Linus's law were false, then any system complex enough like the Linux kernel, which is being manipulated by so many, should have collapsed under the weight of unforeseen interactions and "very deep" bugs. unnoticed. However, if it is true, then it would suffice to explain the relative absence of bugs in the Linux code, and to demonstrate the superiority, in terms of the quality of the final product, of the free software development model over the traditional model used for develop proprietary software.
Here is an essential difference between the two styles. In the approach used to develop proprietary software, bugs and development problems are deep and complex phenomena. It usually takes months of extensive review for a few to be confident that the bugs have been fixed. This is why there are such long intervals between each version being released, and the inevitable disappointment when these long-awaited versions do not turn out to be perfect.
The approach used to develop free software assumes that bugs are relatively obvious phenomena, or at least that they can become relatively obvious when shown to thousands of enthusiastic developers collaborating on each version. Therefore, it is released frequently so that you can get more fixes in less time.
More users catch more bugs because they have different ways of evaluating the program. This effect is increased when the users are assistant developers. Each one approaches the task of characterizing errors with different analytical tools, from a different angle.
Therefore, adding more beta-testers might help not so much to reduce the complexity of the "deepest" of the current bugs from the developer's point of view, but rather to increase the probability that one of them will clearly see the error and be able to fix it.
Criticism
Some studies have analyzed and criticized Linus's law. Software development experts Robert Glass, Michael Howard, and David LeBlanc have determined that the application of Linus's Law can lead to software maintenance and security issues, citing the relatively low number of contributions made to open-source projects by "externals": where "externals" refers to contributors who do not belong to the small core of developers working on the project.
This is a direct result of the care developers need to take when building an environment and understanding a piece of code before they can effectively contribute to it. Some projects tend to be wary of external contributions, fearing that they will try to generate hard-to-find code bugs or security holes, and thus such projects create an inconvenient review process that can discourage external development.
Linus's law of motivations
Linus Torvalds also talks about Linus' Law in the foreword to the book The Hacker Ethic. Linus' Law says:
All our motivations fall into three basic categories. And what is even more important, progress is to go from one category to another, as "fases" of a process of evolution. The categories, in order, are: "survival", "social life" and "intertention".
This idea is similar to the pyramid of needs, which was developed by the American humanistic psychologist Abraham Maslow.