Глава 2. Такое простое начало
Глава 2. Такое простое начало
Рождение концепции краудсорсинга24
На заре компьютерной эры все исходные коды являлись открытыми. Это было связано больше с объективными обстоятельствами, чем с дизайном ПО, но повлекло за собой существенные последствия далеко за пределами программирования. Исходный код – это набор англоязычных команд, которые по мере их перевода в нули и единицы отдают команды компьютеру. Открытый исходный код выглядит соответственно своему названию: он открыт для всех желающих, в него можно заглянуть, скопировать, настроить и использовать по своему усмотрению в любых целях. Именно благодаря этой открытости мир компьютерного программирования традиционно развивался в духе сотрудничества и свободного обмена информацией. И именно потому, что он изначально оказался доступным, небольшая группа высокоидейных программистов-«диссидентов» решила сохранить его открытым. Они, естественно, не могли заставить Microsoft, Sun Microsystems или Apple раскрыть свои коды, но зато сумели создать бесплатную и свободную для общего пользования альтернативу.
Для этого создателям открытого программного обеспечения (ОПО) потребовалось найти новые пути воплощения своих замыслов. Они не могли нанять работников за деньги, а задача, стоявшая перед ними, – создать совершенно новую операционную систему – требовала миллионов часов рабочего времени, а посему выглядела поистине устрашающей. Станут ли высококвалифицированные специалисты тратить свое свободное время на проект, казалось бы, изначально обреченный на провал? Оказалось, что да, будут. И займется этим много, очень много людей. Именно потому, что много людей выступило в поддержку инициативы, нагрузка была распределена между ними равномерно, а не легла на плечи только группы энтузиастов. К началу 1990-х гг. «толпа» произвела свой первый значимый продукт – операционную систему Linux, во многих отношениях превосходящую лучшие продукты других корпораций. Появление ОПО стало прецедентом. Оно подтвердило, что если люди, работая в свободное время – «экспериментируя» с химическими опытами на кухне, играя на музыкальных инструментах в подвалах, фотографируя по воскресеньям, – обеспечивают заправку двигателя краудсорсинга топливом, то, имея ясно сформулированную цель, можно привести его в движение.
Конечно, никто не подозревал об этом в 1969 г., когда Кен Томпсон, программист, работавший в подразделении Bell Laboratories телефонной компании AT&T, неожиданно почувствовал, что устал от безделья. Томпсон был занят в рамках амбициозного пятилетнего проекта сотрудничества Массачусетского технологического института, компании General Electric и Bell Laboratories. Его целью было создание более эффективной операционной системы для ЭВМ, которая позволяла бы одновременно выполнять более чем одну операцию – это ограничение в то время существенно замедляло скорость обработки данных даже на самых совершенных компьютерах. Но все усилия были напрасными. Только одно руководство по использованию операционной системы было расписано на 3000 страницах. Bell потеряла всякую веру в проект и отстранилась от дел.
Во время неожиданно свалившегося четырехнедельного отпуска Кен решил попробовать начать работу с чистого листа, советуясь только с самим собой. Глобальную цель он сразу же заменил на несколько малых, но казавшихся ему вполне реальными. Каждую неделю он посвятил написанию одного из этих четырех компонентов будущей операционной системы. Как отмечал в своей книге «Успех открытого кода» (The Success of Open Source) политолог Стивен Вебер, «имея всего один человеко-месяц рабочего времени и простое аппаратное обеспечение, Томпсон вынужден был забыть о комплексном мировосприятии и делать что-то очень простое». Или, как когда-то сказал один из компаньонов Томпсона, «создавать маленькие простые предметы вместо чего-то грандиозного».
К концу месяца Томпсон прописал основное тело Unix, операционной системы, наиболее успешной из когда-либо созданных. Но не только сама Unix сделала Томпсона исторической личностью. Не менее значимым было его решение использовать конвейеры из нескольких программ, каждая из которых выполняет одну задачу. Этот принцип в конечном счете позволил впоследствии сотням программистов децентрализованно работать над одной задачей, подобно тому, как тысячи пользователей работают над единым справочником – «Википедией». Разбивка работы на мелкие части, или модули, является одним из отличительных признаков краудсорсинга, который сродни подходу к программированию ОПО – «пришел один – пришли остальные».
Методика Кена Томпсона не то чтобы перевернула тогдашний программистский мир. Компьютерная наука в 1960-е гг. развивалась в основном на базе университетских кафедр и исследовательских лабораторий, наподобие Bell, Массачусетского технологического института. Открытость компьютерных кодов соответствовала общей академической традиции свободного обмена информацией. Один из первых коммерческих компьютеров, IBM 705, в момент своего появления в 1953 г. стоил $1,6 млн (это в пересчете на цены 2008 г. более $12 млн). Но кроме того, что это была безумно дорогая вещь размером с половину комнаты, компьютер требовал огромного количества времени для написания программы, сообщавшей ему, какие действия необходимо выполнить. Чтобы оптимизировать эту работу, ей одновременно занималось по нескольку человек, объединяя свое время и знания.
В те годы и зародилась культура программистского сообщества, характеризующаяся дружескими, веселыми, конкурентными отношениями между преданными своему делу специалистами, с высоким уровнем взаимодействия и поддержки. В то время разницы между пользователями и программистами не существовало, просто потому, что единственными людьми, которые могли совладать с компьютерами, были те, кто одновременно занимался и программированием. По сути, это были первые хакеры. И хотя со временем этот термин приобрел негативный оттенок, изначально он относился к людям, чье мастерство работы с компьютером можно было сравнить с искусством.
С появлением персональных компьютеров появилось и проприетарное, «частное» программное обеспечение. Возник конфликт. В 1976 г. Билл Гейтс и Пол Аллен – соучредители и единственные на тот момент сотрудники компании, которая тогда называлась Micro-Soft, – выступили с открытым письмом любителям. Они не деликатничали: «Основная масса любителей должна понимать, что в большинстве своем вы крадете программное обеспечение. Все понимают, что за аппаратное обеспечение надо платить, но разве программное обеспечение – это нечто общее или ничейное? Похоже, никого не заботит, что люди, которые работали над его созданием, должны получить плату за свой труд». Авторы письма безоговорочно осуждали то, что у хакеров вошло в привычку, а именно свободный обмен программным обеспечением и его исходными кодами. Гейтс и Аллен отметили: 1) большинство этих пользователей никогда не покупали BASIC (менее 10 % владельцев купили Altair); 2) величина роялти от продажи BASIC любителям устанавливает цену машинного времени, затраченного на разработку Altair BASIC, составляет менее $2 за час работы программиста. «Кто возьмется за написание программного обеспечения за такое вознаграждение? – задавал вопрос Гейтс. – Делая нелегальную копию, вы лишаете создателей возможностей создавать хорошее программное обеспечение. Кто может позволить себе делать профессиональную работу даром? Какой любитель может заставить трех человек целый год программировать, отыскивать все ошибки, документировать свой продукт – а потом раздавать его бесплатно?»
Билл Гейтс даже не мог предположить, что если один любитель никогда не потратит три человека-года на сложный проект, то его сможет легко реализовать тысяча любителей, если они объединят свои усилия.
Данный текст является ознакомительным фрагментом.