Разработка программ с открытыми исходниками как особый вид научных исследований

       

Эффект "городского совета" или


"Покажите мне исходники."

Линус Торвальдс

Разработчики не создают программ в изоляции. Последнее слово остается за пользователями, и они посредством электронной почты могут сыграть важную роль в этом процессе. Электронные послания могут нередко принимать форму перепалки либо использоваться как средство повышения статуса внутри движения, с тем, чтобы поставить в привилегированное положение какую-то бюрократическую суперструктуру, так называемый "эффект городского совета". Алан Кокс (Alan Cox) ввел в обиход два удачных термина: "эффект городского совета" ("town council effect"), и "Комитет по администрированию структурного планирования ядра Linux" ("The committee for the administration of the structural planning of the Linux kernel.") В своей статье "Cathedrals, Bazaars and the Town Council" Алан Кокс пишет (курсив мой):

"Проблемой, которая начала возникать, был наплыв множества опасно малокомпетентных людей (в основном настроенных благожелательно) со своими мнениями - не отлаженным исходным кодом, а мнениями. Они знают достаточно, чтобы представлять, как все должно быть написано, но большинство из них не в состоянии запрограммировать "hello world" на C. Поэтому они неделями обсуждали, а потом устроили голосование по поводу того, какой компилятор надо использовать и не написать ли новый... И это год спустя, как работа над проектом уже началась с использованием вполне приличного компилятора. Они также долго дебатировали, как генерировать загрузочные модули для "большой" модели памяти (large model binary), совершенно игнорируя наличие в ядре средств подкачки (swapper).

По мере развития проекта Linux 8086, настоящие разработчики помещали в свои "списки автоматического удаления" (kill lists) все больше и больше других членов этого списка рассылки с тем, чтобы иметь возможность продолжать общаться. Просто слишком многие малокомпетентные люди шелестели и мешали работать. Группа перестала быть анархическим базаром и превратились в "ядро ключевых разработчиков" (core group), что для многих людей служит вежливым заменителем слова "клика". В сложившихся обстоятельствах это было неизбежной защитной позицией.

В случае Linux пользовательско/программистская база росла медленно и происходила из неявной базы людей, которые писали код и либо принадлежали к изначальному сообществу хакеров Minix, либо изучили некоторые основные структуры в коде самым трудным путем - многократно перегружая повисшую после внесения очередного изменения систему. С ростом проекта люди, которые должны были бы превратиться в "Комитет по администрированию структурного планирования ядра Linux" вместо этого очутились в окружении, в котором от них ожидали отдачи в виде кода, и где провал не считался проблемой. Цитируя Линуса: "покажите мне исходники"."



Содержание раздела