28 ноября 2019Общество
123

Хранить охлажденным

Борислав Козловский о том, зачем прятать на заполярном архипелаге библиотеку распечатанных компьютерных программ

текст: Борислав Козловский
Detailed_picture© GitHub

Когда лондонский дизайнер Томас Твейтс учился в Королевском колледже искусств, он решил сделать своими руками тостер. Самый обычный, какие продаются в Британии за 3 фунта и 94 пенса. И сделать его с нуля — то есть не пользоваться готовыми деталями (внутри магазинного экземпляра деталей оказалось около 400), а начинать с сырых материалов. Следующие девять месяцев Твейтс ездил по законсервированным рудникам в поисках железной руды и слюды, мастерил на заднем дворе горн, опираясь на средневековые гравюры (более поздние технологии не предполагают, что кто-то будет выплавлять железо в одиночку), и выковывал из меди штыри для штепселя.

Твейтс без колебаний заменял кузнечные мехи садовым пылесосом и пускал в ход микроволновую печь, потому что историческим реконструктором не был и задачи изобразить аутентичного средневекового мастерового себе не ставил. Его — как, наверное, и читателей книги «Проект “Тостер”», а также полтора миллиона зрителей его 11-минутной лекции — занимал другой вопрос: что делать, если цивилизация сломается в каком-нибудь чувствительном месте и взять готовый тостер будет негде? Тостер, который получился в итоге, позволил включить себя в розетку и даже проработал пять секунд. Как быть с более сложной техникой? В 1986 году шаттл «Челленджер» взорвался в прямом эфире с семью астронавтами на борту, и в NASA рассматривали идею вернуться к ракетам Saturn V, которые за 15 лет до того возили людей на Луну. Выяснилось, что чертежи сохранились не все. Инженеры, которым на старте лунного проекта было 40, повыходили на пенсию. Коммерческие компании, 15 лет назад по заказу NASA штамповавшие какие-нибудь шнуры или заглушки, успели закрыться. Атомной войны не понадобилось, чтобы техника стала невосстановимой.

Из 2019 года кажется, что консервировать знание стало проще — все-таки мы живем в цифровом мире, а оцифрованное не едят мыши и книжный червь. И легче всего начинать с вещей, которые были цифровыми с самого начала. В ноябре компания Microsoft предложила свой проект мегаархива под названием Arctic Code Vault. В специально подобранную круглую дату — 02.02.2020, 2 февраля 2020 года — создадут архивную копию самого большого сайта компьютерных программ с открытым кодом — Github.com (Microsoft купила его у основателей прошлой осенью). Их все распечатают и спрячут на заполярном архипелаге Шпицберген, в 1300 километрах от Северного полюса. Формально тот принадлежит Норвегии, фактически поделен между Норвегией и Россией, которые почти сто лет добывали здесь уголь. Одну из бывших шахт и сделали хранилищем кода: он будет лежать на 150-метровой глубине за толстыми железными дверьми.

Всего в километре отсюда (и даже внутри той же шахты) в 2008 году построили Всемирный банк семян, больше известный как «Хранилище Судного дня». Выбор места выглядит довольно последовательным — чтобы в Судный день два раза не вставать. Если уцелевшее после конца света человечество отправит сюда гонца за семенами, то по дороге он сможет завернуть и за архивом всех программ.

Или, если быть точным, почти всех. То, что прячется за иконками на рабочем столе офисных компьютеров, — Word и Excel, PowerPoint и Photoshop — в архив не попадет. Это защищенные копирайтом коммерческие продукты. Их исходный код не был опубликован и не будет, пока они продаются в готовом, собранном виде и спрашивают у покупателя ключ активации. Что вообще останется, если вынести за скобки все эти программы? Результаты работы еще 40 миллионов программистов, отвечает Github на странице со статистикой. Исходный код криптовалюты Bitcoin. Код операционной системы Linux, которая приводит в действие подавляющее большинство серверов в мире. Главные библиотеки Google и Facebook для работы с тем, что принято называть искусственным интеллектом. 35 из 50 самых богатых корпораций мира выкладывали за последний год свой код в открытый доступ. Если вы решите отстраивать цивилизацию с нуля, все это может вам понадобиться раньше, чем Word и Excel.

Почему все-таки код — а не тщательно отобранные и готовые к запуску полезные программы, которые не защищены копирайтом? Потому что по смыслу заполярный архив Github ближе к библиотеке чертежей, чем к складу инструментов. И адресат такой библиотеки — скорее, археолог, который захочет разобраться, откуда у цивилизации те или иные инструменты взялись. Не в общефилософском смысле, а зачем у условного тостера та или иная кнопка на боку. И нужна ли она вам, когда вам понадобится в мире без тостеров строить свой тостер с нуля.

Github с самого начала — еще до всяких планов на следующее тысячелетие — был задуман так, чтобы археологу, заявившемуся с такими вопросами, было удобно. Но это не особенность конкретного сайта, а особенность кода вообще.

В формулировке «код — это тексты программ» главное слово — «тексты». Они рассчитаны на то, что их будет читать другой человек (и только потом — компьютер). Потому что обычно этот текст коллективный и самые вероятные читатели — другие его писатели. Над кодом криптовалюты Bitcoin независимо работали, к примеру, 676 человек (число участников — первое, что Github показывает на странице каждого проекта), и, чтобы 676-й мог добавить что-нибудь свое, первым 675 нужно было иметь его в виду, излагая свои мысли на языке C++.

Ровно поэтому проект Github хранит код как дневник исправлений и добавлений: вот один участник загрузил свой текст, вот другой добавил в него фразу. Самый полезный прием — откручивать историю назад и смотреть, как сложные системы вырастают из простых и понятных заготовок. Чтобы разобраться в 15 миллионах строк кода ядра Linux, начинать чтение стоит не с начала и не с конца, а с первой версии в 10 239 строк, которую 28 лет назад написал самостоятельно и опубликовал финский студент Линус Торвальдс. (Систему Git, на которой основан Github, — тот самый «дневник правок» — придумал тоже, кстати, он.) И это выгодно отличает код на Github от прозы, сочиненной автором в одиночку и присланной издателю в оконченном виде. Если бы у Достоевского был Github, можно было бы открутить историю правок назад и увидеть, как долгая сцена чаепития со скандалом, теряя детали, превращается в сухую строчку синопсиса «Иван пьет чай».

* * *

Обещанный срок хранения кода на Шпицбергене — 1000 лет. Столько не живут ни жесткие диски компьютеров, ни DVD. Хуже их хрупкости — риск, что уже через 20 лет их некуда будет воткнуть: попробуйте за несколько часов найти в Москве место, где вы сможете прочитать тексты с дискеты 20-летней давности, нашедшейся при ремонте где-нибудь за шкафом. Поэтому ключевую часть кода решили взять и распечатать так, чтобы его при необходимости мог прочесть человек без сложных приборов. Достаточно иметь мощную лупу и фонарик: каждая порция данных — это кадр с микроскопическими буквами на тысячеметровых бобинах c кинопленкой, придуманной специально для тысячелетнего хранения на холоде норвежской компанией Piql. Еще больше бобин потратят на код в форме QR-кодов.

Со временем бобины думают заменить маленькими квадратными стеклянными пластинками, в толще которых информация выгравирована лазером, со сроком жизни в 10 000 лет. Одну такую ученые из Microsoft показали журналистами в начале ноября — на нее записали целиком фильм «Супермен» 1978 года. Видео для примера выбрали сознательно — потому что как раз киностудии хорошо знают, что такое потерять весь архив зараз. В 1937 году в Нью-Джерси загорелось фильмохранилище 20th Century Fox (пленку тогда делали из горючей и взрывчатой нитроцеллюлозы), и большая часть немых фильмов, снятых на студии до 1932-го, была утрачена необратимо — нигде больше в мире не осталось ни одной копии.

Стекло или пленка решают проблему сохранности, но не решают проблему полезности — завещать что-нибудь полезное из предметов своего быта сложно даже внуку, родившемуся на 50 лет позже вас, не то что людям, которые будут жить через 10 000 лет. Популярная цитата из «Золотого теленка» — «Мне не нужна вечная игла для примуса, я не собираюсь жить вечно» — еще и о том, что спроектированное будущее может и не состояться: в 2019 году вечность еще не закончилась, а игла для примуса уже не нужна.

Другое дело, что компоновка любых архивов на будущее — хороший повод устроить перепись и переучет того, что есть прямо сейчас, и собственных представлений о будущем. Капсулы времени, которые в каком-нибудь 1959-м закладывали в стены дворцов молодежи для комсомольцев далекого коммунистического 2019-го, заставляли как минимум сформулировать в сопроводительном письме, чего от этого 2019-го авторы послания ждут. Когда в 1977 году космические зонды «Вояджер-1» и «Вояджер-2» отправили лететь за пределы Солнечной системы, на поверхности каждого закрепили 30-сантиметровую золотую пластинку: на одной стороне — главные звуки Земли (к пластинкам прилагалась граммофонная игла для их считывания), на другой — краткая информация об отправителях. Поскольку знания английского или русского от адресатов не ждали, то все самое важное про знания человечества изобразили знаками: расположение Солнца относительно звезд-пульсаров, уровни энергии атома водорода, схему кодирования сигнала. На музыкальную половину попали запись Баха в исполнении Гленна Гульда, Стравинский и азербайджанские барабаны. Под давлением астронома Сагана, автора всей этой затеи, Чак Берри вошел в подборку, а «Битлз» после долгих споров исключили.

Arctic Code Vault — еще одна капсула времени для неопределенного адресата. Если идеей пластинки для «Вояджеров» было отобрать только самое главное и представить цивилизацию в формате хит-парада, то у Github задача прямо противоположная — заморозить техническое знание во всем разнообразии. Код Торвальдса будет дожидаться вечности в шахте рядом с кодом китайского старшеклассника, который завел аккаунт на сайте Github.com ради разового учебного проекта. В 2019-м код пишут и выкладывают на Github не только и не столько программисты — а, например, еще и ученые. Константин Батыгин из Калтеха, автор гипотезы про девятую планету далеко за орбитой Плутона и самый популярный в России астроном (после интервью Дудю), выкладывает в Твиттере фото с учебником по дата-майнингу на языке программирования Python, потому что это такой же рутинный инструмент ученого, как телескоп. Лингвисты пишут скрипты для анализа твитов. Даже подписи в поддержку фигуранта «московского дела» Константина Котова, который отправился в колонию на четыре года только за то, что выходил на мирные митинги повторно, его коллеги-программисты стали собирать в виде файлов, отправленных на Github.

Слепок этой смеси кода, текстов, комментариев и правок — возможно, лучший способ рассказать человеку из 3019-го, чем цивилизация была озабочена тысячу лет назад. Даже если перед ним не стоит срочная задача собрать и запрограммировать свой тостер непосредственно после конца света.

ОБЩЕСТВО: ВЫБИРАЙТЕ ГЕРОЕВ ДЕСЯТИЛЕТИЯ



Понравился материал? Помоги сайту!

Сегодня на сайте
Евгения Волункова: «Привилегии у тех, кто остался в России» Журналистика: ревизия
Евгения Волункова: «Привилегии у тех, кто остался в России»  

Главный редактор «Таких дел» о том, как взбивать сметану в масло, писать о людях вне зависимости от их ошибок, бороться за «глубинного» читателя и работать там, где очень трудно, но необходимо

12 июля 202349587
Тихон Дзядко: «Где бы мы ни находились, мы воспринимаем “Дождь” как российский телеканал»Журналистика: ревизия
Тихон Дзядко: «Где бы мы ни находились, мы воспринимаем “Дождь” как российский телеканал» 

Главный редактор телеканала «Дождь» о том, как делать репортажи из России, не находясь в России, о редакции как общине и о неподчинении императивам

7 июня 202342835