Закон Лінуса
Закон Лінуса (англ. Linus's Law) — будь-яке з двох відомих емпіричних спостережень, названих на честь Лінуса Торвальдса, творця ядра Linux.
Закон Лінуса, згідно з Еріком Реймондом
Згідно з Еріком Реймондом, закон Лінуса говорить, що «при достатній кількості очей баги випливають на поверхню» (англ. "given enough eyeballs, all bugs are shallow "); або, більш формально, «при достатній кількості бета-тестерів і співробітників, майже будь-яка проблема буде швидко виявленою і виявиться для когось очевидною». Реймонд сформулював це правило в четвертій частині свого есе «Собор і базар».
Критика
Деякі дослідники не згодні з правилом «достатньої кількості очей». Наприклад, Роберт Гласс оскаржує закон Лінуса, і вважає, що участь більше двох-чотирьох розробників у пошуках багів в ділянці коду не підвищує результативність цього пошуку. [1] Майкл Хауард і Девід ЛеБланк стверджують, що «достатня кількість очей» все одно може не помітити баг, якщо вони недостатньо знайомі з цією ділянкою коду; і що відкритість вихідного коду не гарантує безпеку ПЗ, оскільки серед розробників, які читають код, лише деякі вміють помічати уразливості. [2]
Слід зауважити, що сам Ерік Реймонд не згоден з популярними спрощеними трактуваннями свого формулювання закону Лінуса. [3]
Закон Лінуса, згідно з Лінусом
Сам Лінус Торвальдс під законом Лінуса має на увазі свої роздуми про причини розвитку людського суспільства, які він спочатку опублікував в автобіографії Just for Fun.[4] У передмові до книги Хіманен «Хакерська етика » (The Hacker Ethic), Торвальдс запропонував коротше формулювання закону:
Закон Лінуса свідчить, що всі наші мотивації можна розділити на три основні категорії. І що більш важливо, прогрес означає проходження через ті ж три категорії, як «фази» в процесі еволюції, тобто переміщення з категорії в наступну категорію. Ці категорії, за порядком — «виживання», «соціальне життя» і «розвага». [5]
Такий варіант закону Лінуса схожий на піраміду потреб за Маслоу.
Інші «закони Лінуса»
- Торвальдс, в одному зі своїх повідомлень в списку розсилки GNOME, написав, що «закон Лінуса (№ 76 з 271)» — "не слід писати, що у вашої програми є якась опція, якщо її неможливо змінити через інтерфейс користувача ".[6]
- «Теорія і практика іноді стикаються. Коли це трапляється, теорія програє. Завжди»[7].
Примітки
- Robert L. Glass About the Life Cycle // Facts and Fallacies of Software Engineering. — Addison-Wesley, 2002. — С. 174-5. — 195 с. — ISBN 0321117425
- Michael Howard, David LeBlanc Writing Secure Code, Second Edition. — Microsoft Press, 2002. — С. 616, 726. — 768 с. — ISBN 0735617228
- Eric S. Raymond. Many eyes, shallow bugs -- the untold story. Архів оригіналу за 28 липня 2013. Процитовано 12 серпня 2010.
- Linus Torvalds, David Diamond Just for Fun. — HarperBusiness, 2001. — С. 243—246. — 262 с. — ISBN 9780066620725
- Pekka Himanen The Hacker Ethic. — Random House, 2002. — С. xiv. — 256 с. — ISBN 037575878X
- Printing dialog and GNOME.
- (англ.)Torvalds, Linus (25 березня 2010). Message to Linux kernel mailing list. Архів оригіналу за 29 березня 2009. Процитовано 25 березня 2010.