Есть программы, которые называются “дизассемблеры”, они переводят единицы и нули в низкоуровневые машинные инструкции, но разобраться, что эти инструкции делают – очень долгий и трудный процесс, называемый “обратной разработкой”. На обратную разработку программы принтера легко могло уйти куда больше времени, чем на суммарное исправление зажёванной бумаги в течение ближайших 5 лет. Ричард был недостаточно отчаянным, чтобы решиться на такой шаг, и потому он просто отложил проблему в долгий ящик.
Недружелюбная политика Xerox резко противоречила обычной практике хакерских сообществ. Например, чтобы разработать для персонального компьютера PDP-11 программы для управления старым принтером и терминалами, Лаборатории ИИ нужен был кросс-ассемблер, который собирал бы программы для PDP-11 на мейнфрейме PDP-10. Хакеры Лаборатории могли написать кросс-ассемблер сами, но Столлман, будучи студентом Гарварда, нашёл похожую программу в компьютерной лаборатории университета. Она была написана для такого же мейнфрейма, PDP-10, но под другую операционную систему. Ричард понятия не имел, кто написал эту программу, поскольку в исходном коде об этом ничего не говорилось. Он просто принёс в Лабораторию копию исходного кода, отредактировал её, и запустил на PDP-10. Без лишних хлопот и забот Лаборатория получила программу, которая была необходима для работы офисной инфраструктуры. Столлман даже сделал программу мощнее, добавив в неё несколько функций, которых не было в оригинале. “Мы вовсю использовали эту программу несколько лет”, – не без гордости сообщает он.
В глазах программиста 70-х годов такая модель распространения программного кода ничем не отличалась от добрососедских отношений, когда один делится с другим чашкой сахара или даёт на время дрель. Но если вы, когда одалживаете дрель, лишаете хозяина возможности ею пользоваться, то в случае с копированием программ ничего подобного не происходит. Ни автор программы, ни её другие пользователи ничего не лишаются от копирования. Зато другие люди от этого приобретают, как в случае с хакерами Лаборатории, что получили программу с новыми функциями, которых раньше даже не было на свете. И эти новые функции можно так же сколько угодно копировать и распространять среди других людей. Столлман вспоминает об одном программисте из частной компании Bolt, Beranek & Newman, который тоже получил программу и отредактировал её для запуска под Twenex – ещё одной операционной системой для PDP-10. Также он добавил в программу ряд замечательных функций, и Столлман скопировал их в свою версию программы в Лаборатории. После этого они решили сообща развивать программу, которая уже ненароком выросла в мощный продукт, работающий на разных операционных системах.
Вспоминая программную инфраструктуру Лаборатории ИИ, Столлман говорит: “Программы развивались подобно городу. Какие-то части менялись понемногу, какие-то – сразу и полностью. Появлялись новые участки. И вы всегда могли взглянуть на код и сказать, мол, судя по стилю, эту часть написали в начале 60-х, а эту – в середине 70-х”.
Благодаря такой простой умственной кооперации, хакеры создали множество мощных и надёжных систем в Лаборатории и вне её. Не каждый программист, разделяющий эту культуру, назвал бы себя хакером, но большинство из них вполне разделяли настрой Ричарда Столлмана. Если программа или исправленный код хорошо решают вашу проблему, они так же хорошо решат эту проблему для кого угодно. Почему бы тогда не поделиться этим решением, хотя бы из моральных соображений?
Эту концепцию безвозмездного сотрудничества подорвало сочетание жадности и коммерческой тайны, породив причудливое сочетание секретности и кооперации. Хороший пример – начальный период жизни BSD. Это мощная операционная система, которую создали учёные и инженеры Калифорнийского Университета в Беркли на основе Unix, купленной в AT&T. Стоимость копирования BSD была равна стоимости плёнки, но с одним условием – плёнку с копией BSD школы могли получить только имея лицензию AT&T, которая стоила $50,000. Получалось, что хакеры Беркли делились программами только в той мере, в какой им позволяла это делать компания AT&T. И они не видели в этом ничего странного.