Ағылшыншамен салыстырыңыз: абзацты басыңыз — түпнұсқа терезеде ашылады. Абзац астындағы EN түймесі оны мәтін ішінде көрсетеді.
Кіріспе
1999 жылы Эрик С. Реймондтың Линус Торвальдстың есімімен аталған бағдарламалық жасақтаманы дамыту туралы айтқан пікірі.
1999 claim by Eric S. Raymond about software development, named after Linus Torvalds
Бағдарламалық жасақтаманы дамытуда Линус заңы – "көздер жеткілікті көп болса, барлық қателер беткей болады" деген тұжырым. Бұл заңды Эрик С. Реймонд өзінің "Кафедраль және базар" (1999) эссесі мен кітабында айтқан және Линус Торвальдстың құрметіне осылай атаған. Заңның толыққанды түрі: "Егер жеткілікті түрде көптеген сынаушылар мен бірлесіп жұмыс істейтін дамытушылар болса, дерлік барлық мәселелер тез анықталады және оларды шешудің жолы біреуге анық болады". Кодты көптеген дамытушыларға көрсету және оның қабылдануы туралы келісімге келу – бағдарламалық жасақтаманы қараудың қарапайым түрі. Зерттеушілер мен тәжірибелі мамандар кодты қарау процесінің қателерді және қауіпсіздік мәселелерін табуда тиімді екенін көптеген рет көрсеткен.
In software development, Linus's law is the assertion that "given enough eyeballs, all bugs are shallow". The law was formulated by Eric S. Raymond in his essay and book The Cathedral and the Bazaar (1999), and was named in honor of Linus Torvalds. A more formal statement is: "Given a large enough beta tester and co developer base, almost every problem will be characterized quickly and the fix obvious to someone." Presenting the code to multiple developers with the purpose of reaching consensus about its acceptance is a simple form of software reviewing. Researchers and practitioners have repeatedly shown the effectiveness of reviewing processes in finding bugs and security issues.
Қолданылу мерзімі
Бағдарламалық жасақтама туралы фактілер мен қателіктерде Роберт Гласс заңды ашық кодты қолдаушылардың "мантрасы" деп атайды, бірақ оны қолдайтын дәлелдердің жетіспеуіне және зерттеулер қосымша қателердің табылу қарқыны рецензенттер санына пропорционалды емес екенін көрсеткендіктен, қателік деп санайды. Керісінше, пайдалы рецензенттердің саны екі мен төрт арасындағы шектеулі, ал осы сандан артық рецензенттер қателерді айтарлықтай төмен қарқынмен табады. Жабық кодты қолданушылар да бағдарламалық жасақтама жобасын дамыту кезінде қатаң, тәуелсіз кодты талдауды жақтайды, бірақ олар негізінен "көздердің" санына емес, бірнеше сарапшының терең талдауына баса назар аударады. Heartbleed қауіпсіздік ақауының маңызды код бөлігінде екі жыл бойы сақталуы Реймондтың қағидасын жоққа шығаратын дәлел ретінде қарастырылды. 2015 жылы Linux Foundation атқарушы директоры Джим Землин қазіргі заманғы бағдарламалық жасақтаманың күрделілігі оның қауіпсіздігін арттыру үшін нақты ресурстарды бөлуді қажет ететін деңгейге жеткенін мәлімдеді. 2014 жылғы ең ірі ашық кодты бағдарламалық жасақтамадағы осалдықтар туралы ол: "Осы жағдайларда көздер жеткілікті мұқият қараған жоқ" деді. Бұл мантраның практикада қаншалықты тиімді екенін тексеру үшін кең ауқымды тәжірибелер немесе пәлсапалық зерттеулер жүргізілген жоқ. Линус заңының эмпирикалық негізін бір ұйымның танымал және танылмаған жобаларын салыстыру арқылы растады. Танымал жобалар – GitHub-тағы ең жоғары 5%-ға кіретін жобалар (7481 жұлдыз немесе одан да көп). Ақауларды анықтау түзетуге қатысты комиттердің үлесі арқылы өлшенді, яғни ақауларды түзетумен байланысты комиттердің саны. Талдау көрсеткендей, танымал жобаларда ақауларды түзету көрсеткіші жоғары болды (мысалы, Google-дың танымал жобалары Google-дың аз танымал жобаларына қарағанда 27%-ға көбірек ақауларды түзетті). Google танымал жобаларында код сапасы стандарттарын төмендеткені екіталай болғандықтан, бұл танымал жобаларда ақауларды анықтау тиімділігінің артып отырғанын көрсетеді.
In Facts and Fallacies about Software Engineering, Robert Glass refers to the law as a "mantra" of the open source movement, but calls it a fallacy due to the lack of supporting evidence and because research has indicated that the rate at which additional bugs are uncovered does not scale linearly with the number of reviewers; rather, there is a small maximum number of useful reviewers, between two and four, and additional reviewers above this number uncover bugs at a much lower rate. While closed source practitioners also promote stringent, independent code analysis during a software project's development, they focus on in depth review by a few and not primarily the number of "eyeballs". The persistence of the Heartbleed security bug in a critical piece of code for two years has been considered as a refutation of Raymond's dictum. In 2015, the Linux Foundation's executive director Jim Zemlin argued that the complexity of modern software has increased to such levels that specific resource allocation is desirable to improve its security. Regarding some of 2014's largest global open source software vulnerabilities, he says, "In these cases, the eyeballs weren't really looking". Large scale experiments or peer reviewed surveys to test how well the mantra holds in practice have not been performed. Empirical support of the validity of Linus's law was obtained by comparing popular and unpopular projects of the same organization. Popular projects are projects with the top 5% of GitHub stars (7,481 stars or more). Bug identification was measured using the corrective commit probability, the ratio of commits determined to be related to fixing bugs. The analysis showed that popular projects had a higher ratio of bug fixes (e. g., Google's popular projects had a 27% higher bug fix rate than Google's less popular projects). Since it is unlikely that Google lowered its code quality standards in more popular projects, this is an indication of increased bug detection efficiency in popular projects.