По словам создателя ОС Linux Линуса Торвальдса, его родители выбрали ему имя в дань восхищения двукратным лауреатом Нобелевской премии Лайнусом Полингом (Linus Pauling)1. Вторую Нобелевскую премию Полинг получил за работу, приведшую впоследствии Крика и Уотсона к открытию ДНК.
Обращаясь к нашему времени через сто лет, люди, возможно и вспомнят имя Билла Гейтса, но кроме него — почти никого из представителей компьютерной промышленности. Более вероятно, что они вспомнят другие имена: Дэйва Кларка, Билла Джоя, Лэри Уолла или Линуса Торвальдса (на фото). |
Имя оказалось выбрано «уместно». Ведь наука, в конечном счете — предприятие открытых текстов. Научный метод основывается на процессах открытия и проверки. Для того, чтобы научные результаты могли быть проверяемы, они должны быть воспроизводимы. Воспроизведение невозможно без деления между учеными исходными условиями: гипотезами, условиями проверки и результатами. Процесс открытия может идти по-разному, и иногда научные открытия делаются в изоляции. Но в конечном счете процесс открытия должен быть сопровожден делением информацией: это позволяет другим ученым двигаться вперед там, где невозможно пройти в одиночку; «перекрестное опыление» идеями позволяет вырастить то, что в иных условиях не могло бы родиться.
В то время, как ученые говорят о воспроизведении, программисты, вовлеченные в работу с открытыми текстами, говорят об отладке. В то время, как ученые говорят об открытиях, программисты открытых текстов говорят о создании программ. В конечном счете, «движение открытых текстов» есть расширение научного метода, поскольку в основе компьютерной индустрии лежит все же информатика, computer science. Сравните сказанное со словами изобретателя компиляторов Грейс Хоппер: «Для меня программирование — нечто большее, чем важный вид практической деятельности. Это также и колоссальное упражнение в области основ познания.»
Полинг, Крик и Уотсон возможно не осознавали в свое время, что их работы подвели к порогу новой эры в биологической науке. К моменту открытия двойной спирали биология и химия были в первую очередь ремеслом, искусством практики. Эти науки создавались небольшими группами людей в основном в рамках академических исследований. Но семена перемен были уже посеяны. Благодаря ряду открытий в области лекарственных средств, и в первую очередь благодаря открытиям вакцины против полиомелита и пенициллина, наука биология подошла вплотную к тому, чтобы стать отраслью промышленности.
Сегодня такие области, как органическая химия, молекулярная биология и основные исследования по созданию лекарственных препаратов перестали быть делом небольшого числа «ремесленников»; они превратились в промышленное производство. Академические исследования еще продолжаются, однако же явно большая часть исследователей и финансов, выделяемых на исследования, сосредоточены в фармацевтической промышленности. Союз науки с промышленностью по меньшей мере непрост. С одной стороны, фармацевтические компании в состоянии финансировать исследования в объемах, о которых академические институты могут только мечтать. С другой стороны, это финансирование направляется только в темы, представляющие для компаний интерес. Судите сами, что предпочтет профинансировать фармацевтическая компания: исследования в области поисков способов излечения болезни, или исследования в области поиска подходящих лекарств ?
Открытые тексты как научный метод
Информатика также вынуждена сосуществовать в непростых отношениях с промышленностью. Если когда-то новые работы возникали в первую очередь в среде академических работников, то сегодня двигателем новых работ является промышленность. В то время как среди разного рода программистов, создающих ПО открытых текстов, все еще много студентов и аспирантов, все больше и больше разработчиков сосредотачивается в промышленности, а не в академических организациях, и все больше компаний начинают строить свой бизнес вокруг модели открытых текстов.
Но информатика имеет фундаментальное отличие от всех остальных наук. В ней имеется всего один способ обеспечить коллегам воспроизведение результата: предоставить во всеобщее пользование исходный текст. Продемонстрировать кому-нибудь правильность программы можно только предоставив в распоряжение другого возможность ее откомпилировать и запустить. Таким образом получается, что на самом деле модель разработки ПО открытыми текстами есть расширение научного метода.
Воспроизведение делает научные результаты доброкачественными. Трудно ожидать, что один ученый будет в состоянии перебрать все условия испытаний, или же подобрать среду для полной проверки каждого аспекта гипотезы. Когда же он делится гипотезами и результатами с коллегами, он многократно увеличивает число пар наблюдающих за явлением глаз, значительно уменьшая тем самым вероятность что-либо проглядеть. В модели разработки методом открытых текстов тот же самый принцип выражается фразой «От многих глаз ошибке не спрятаться». Раздавая исходные тексты, разработчики делают ПО более доброкачественным. Программы начинают использоваться и проверяться в намного более разнообразных условиях, чем их может предложить один программист, и вследствие этого раскрываются ошибки, которые в одиночку было бы не выявить.
Открытое распространение научных результатов к тому же и стимулирует открытия. Научный метод уменьшает дублирование работ, потому что коллеги будут видеть, что работают по схожим проектам. Прогресс не остановится только из-за того, что какой-нибудь ученый прекратит работу над проектом: если результаты стоят того, работу подхватят другие ученые. Так же и в модели разработки методом открытых текстов: открытое распространение исходных текстов стимулирует творчество. Программисты, работающие над дополняющими друг друга проектами, имеют возможность воспользоваться результатами коллег, или же объединиться в едином проекте. Один проект может дать толчок к развитию другого. И для стоящего проекта не будет катастрофой, если программист из него уйдет. Исходные тексты открыты, и поэтому есть возможность кому-то другому встать его место и подхватить работу. Сообществу разработчиков методом открытых текстов знакома не одна программа с чередующимися руководителями проектов: например, это BIND, Fetchmail и GIMP (GNU Image Manipulation Program).
Сегодняшняя модель разработки методом открытых текстов уходит своими корнями в академическую информатику десятилетней и более давности. Однако, что делает ее сейчас кардинально более успешной, так это быстрое распространение информации через Internet. Когда Уотсон и Крик открыли двойную спираль, они могли рассчитывать на то, что информация об открытии попадет из Кембриджа в Калифорнийский технологический институт за дни или недели. Сегодня же передача подобной информации осуществляется практически мгновенно. Открытые тексты оказались рождены в «эпоху электронного возрождения», обязанную Internet, точно так же, как наука в ее современном виде стала возможной благодаря изобретению печатного станка в эпоху Возрождения.
Информационная инфраструктура в Средних веках была по нынешним представлениям недостаточна. Написанные работы копировались от руки, что было очень дорого, и поэтому информация должна была сопровождаться какой-нибудь немедленной ценностью. Такого рода информацией были торговые записи, банковские переводы, дипломатическая корреспонденция: достаточно краткие записи, имеющие непосредственную ценность, и потому передаваемые сразу. Рассуждения же алхимиков, жрецов и философов, то есть тех людей, кого позже назовут учеными, имели намного более низкий приоритет, и поэтому распространялись много медленнее. Печатный станок изменил такое положение дел, радикально снизив барьеры на подключение к информационной инфраструктуре. Ученые, работавшие до того в изоляции, смогли впервые сформировать подобие единой общности по всей Европе. Но такая общность требовала и абсолютной приверженности к открытости распространения информации.
Именно из такой общности появилась академическая свобода, а со временем и появился процесс, ныне называемый Научным Методом. Ничего этого не было бы возможно без желания сформировать общность, и открытое распространение информации скрепляло эту общность в течение веков.
Попробуйте представить на секунду, что было бы, если бы Ньютон «попридержал» свои законы движения, и вместо этого занялся бизнесом, заключив после 30-летней Войны контракт с артиллеристами из военного ведомства. «Я не расскажу вам ничего о параболических траекториях, а вместо этого буду за соответствующую плату калибровать ваши пушки.» Сама идея звучит абсурдно. Наука не только так не развивалась, она не могла так развиваться. Подобная скрытность не дала бы никакой возможности для развития науки.
Internet — это печатный станок цифровой эры. Барьеры на вхождение в информационную инфраструктуру снова драматически снизились. Исходные тексты программ теперь не нужно распространять на перфолентах, как это было с первоначальными версиями Unix, на гибких дисках, как это было в ранние дни DOS, даже на компакт-дисках. Сегодня любой FTP- или Web-сервер может выступать в качестве дешевого и непрерывно действующего источника распространения.
Это новое возрождение весьма многообещающе, но мы не должны забывать многовековое научное наследие, на котором базируется модель разработки ПО открытых текстов. Союз информатики и компьютерной промышленности сегодня не прост. Имеется давление со стороны гигантов промышленности, желающих держать свои разработки в частной собственности во имя сиюминутной финансовой выгоды. Но в то время как все больше и больше разработок программных систем выполняется в промышленности, а не в академической сфере, промышленность и должна заботиться об информатике санкционируя открытый обмен идеями — иными словами используя модель открытых текстов. Компьютерная промышленность обязана это делать не по каким-то альтруистическим мотивам, и не во имя «великой цели», а по причинам более основательным: во имя собственного интереса.
Во-первых, денежное вознаграждение редко составляет главную заботу наиболее выдающихся программистов ПО открытых текстов. Для этих людей важна репутация, а как показывает история, научный успех долговременнее финансового. Мы можем вспомнить очень немного великих предпринимателей последнего столетия: Карнеги, Рокфеллер, Форд. И мы можем вспомнить гораздо больше ученых и изобретателей за это же время: Эйнштейн, Эдисон, … Полинг. Обращаясь к нашему времени через сто лет, люди, возможно и вспомнят имя Билла Гейтса, но кроме него — почти никого из представителей компьютерной промышленности. Более вероятно, что они вспомнят другие имена: Дэйва Кларка, Билла Джоя, .. и Лэри Уолла или Линуса Торвальдса.
Во-вторых, что более важно, промышленности нужны новые идеи, которые может дать наука. Разработка и отладка ПО методом открытых текстов возможна со скоростью и творческой степенью, существующими в науке. Компьютерной индустрии нужно новое поколение идей, которое обеспечат ей разработки открытыми текстами.
Чтобы поддержать и развить «электронное возрождение», нам необходимы разработки ПО открытых текстов. Движение открытых текстов развивает прогресс не только информатики, но и компьютерной промышленности тоже.
Примечания:
- Имя автора Linux в этой статье приводится в родной для него финской транскрипции. — Прим. перев.
- Уотсон и Крик работали в Кембридже на востоке США, а Полинг - в Калифорнийском политехническом институте на западе над одной и той же проблемой, и в определенной мере являлись конкурентами. Открытие двойной спирали ДНК имело вследствие этого определенную интригу, история которой красноречиво иллюстрирует высказываемые здесь мысли. — Прим. перев.