Собор и Базар



              

Выпускать релизы нужно часто и рано - часть 2


Но как это работало? Было ли там что-нибудь, что я мог повторить или дело было в гениальности Линуса Торвальдса?

Я так не думал. Линус - отличный хаккер (кто из нас сможет полностью разработать качественное ядро операционной системы?), но Linux не является принципиальным скачком вперед. Линус - это не гений разработки, такой как, например, Ричард Столмен или Джеймс Гослинг (NeWS или Java). Линус кажется мне скорее гением инженерного мастерства, обладающим шестым чувством избегать ошибки, доводить разработку до конца и с минимальным усилием находить кратчайший путь из точки А в точку В.

Поставленный таким образом вопрос отвечает сам на себя. Сохраняя постоянным отношение числа хакеров к числу пользователей, Линус получал и стимул и вознаграждение. Стимул - удовлетворенность своими действиями, вознаграждение - ежедневное улучшение своей работы.

Линус стремился максимизировать количество человеко-часов, затраченных на отладку и разработку, даже ценой нестабильности, если какая-то ошибка окажется трудно устранимой. Линус считал что:

8. При достаточном количестве бета-тестеров и сотрудников, почти любая проблема будет быстро обнаружена и окажется для кого-то очевидной.

Или менее формально: "При достаточном количестве глаз, ошибки выплывают на поверхность." Я назову это - законом Линуса.

Мое собственное утверждение состоит в том, что всякая проблема является для кого-то прозрачной. Однако по мнению Линуса, человек, который понимает проблему и находит ее решение, не всегда первый ее обнаруживает. "Кто-то находит проблему", - говорит он, - "А кто-то еще ее понимает. И я часто замечаю, что поиск требует наибольшего навыка." Суть заключается в том, что и то и другое должно происходить быстро.

Существенная разница здесь в различии соборного и базарного стиля. С точки зрения соборного стиля программирования, ошибки - хитрые, коварные и страшные явления. Месяцы работы, не имеющей отношения к разработке, уходят на то, чтобы выловить все ошибки.


Содержание  Назад  Вперед