Шрифт:
Но еще более важно то, что, даже если бы эти сайты предоставили свой исходный код, пользователям было бы нелегко создать полную копию рабочего приложения. Я говорил сторонникам свободного программного обеспечения, таким как Ричард Столлман, что, даже если бы они взяли все программное обеспечение, которое Amazon или Google разработали на Linux, у них не получился бы Amazon или Google. Эти сайты не просто состояли из набора программ. Они представляли собой колоссальную совокупность данных, людей и бизнес-процессов, используемых для сбора, управления и создания текущих услуг с использованием этих данных.
Пока я изучал эту линию аргументации, тектонические процессы технологии создавали новые континенты, которые нужно было отразить на карте. В июне 1999 года сайт Napster для обмена файлами в Интернете перевернул индустрию с ног на голову, позволив пользователям бесплатно делиться друг с другом музыкальными файлами по Сети. Самым интересным с технической точки зрения было то, что Napster, а вскоре и другие сети обмена файлами, такие как FreeNet и Gnutella (а чуть позже BitTorrent), не хранили все файлы в одном месте, как сайты с онлайн-музыкой того времени. Они хранили их на жестких дисках миллионов пользователей по всему Интернету. Энди Орам, один из редакторов моего издательства, особо подчеркнул, что влияние архитектуры этих программ было важнее, чем их бизнес-влияние. (Эта же история повторилась пятнадцать лет спустя с биткойном и блокчейном.)
Это была своего рода децентрализация, которая выходила даже за рамки Всемирной паутины. Становилось понятным, что будущее требует еще более радикального переосмысления возможностей Интернета стать платформой для приложений и контента следующего поколения.
И это будущее не ограничивалось обменом файлами. Суть проекта SETI@home, запущенного в середине 1999 года, заключалась в том, чтобы задействовать неиспользуемую вычислительную мощность домашних ПК интернет-пользователей для анализа сигналов радиотелескопа в поисках признаков внеземного разума. Вычисление, а не только файлы и данные, можно распределить на тысячи компьютеров. И разработчики все чаще осознавали, что мощные приложения в Интернете можно рассматривать как компоненты, востребованные другими программами, которые мы теперь называем веб-сервисами. API (от англ. application programming interface – «интерфейс прикладного программирования») для поставщиков операционных систем, таких как Microsoft, уже не был просто способом предоставить разработчикам доступ к своим системным службам, а стал своего рода дверью, которую интернет-сайт может оставить открытой для других, чтобы они могли войти и безопасно получить данные.
Джон Уделл, наблюдатель-провидец технологического прогресса, даже выступил с докладом на эту тему на первой конференции, посвященной Perl, в 1997 году. Он отметил, что, когда веб-сайт использует внутреннюю базу данных для извлечения информации, он кодирует нужную информацию в формате URL (сетевого унифицированного указателя ресурсов) и что этот URL-адрес может генерироваться программой, по существу превращая любой веб-сайт в компонент, нуждающийся в программировании.
Программисты с первых дней использовали эти скрытые зацепки для удаленного управления веб-сайтами. «Автоматическое сканирование» с помощью программы для посещения и копирования миллионов веб-сайтов является важной частью поисковых систем, но люди теперь задумываются о том, как систематизировать процесс обращения к удаленным веб-сайтам для выполнения более конкретных задач.
Все это привело к появлению совершенно новой парадигмы в области вычислений. Интернет заменил персональный компьютер в качестве платформы для нового поколения приложений. Всемирная паутина была самой мощной силой этой платформы, но обмен файлами, распределенные вычисления и системы обмена сообщениями в Интернете, такие как ICQ, продемонстрировали, что впереди нас ждет история покруче.
Поэтому в сентябре 2000 года я снова собрал группу людей, которые, как я думал, должны были находиться в одной комнате, чтобы выяснить, что между ними общего.
В начале следующего года, опираясь на идеи, полученные на этом «пиринговом» [3] саммите, мы организовали Конференцию пиринговых и веб-сервисов О’Райли. К 2002 году мы переименовали ее в Конференцию новых технологий О’Райли и обозначили ее тему как «Создание сетевой операционной системы».
Я до сих пор помню недоумение, с которым некоторые люди реагировали на мой выбор ключевых слов для мероприятия: один касался компании Napster и сетевого обмена файлами, другой – распределенных вычислений, а третий – веб-сервисов. «Как эти вещи связаны между собой?» – спрашивали люди. Мне было ясно, что все эти понятия являются аспектами эволюции Интернета во всеобщую платформу для новых видов приложений.
3
От peer-to-peer, P2P – оверлейная компьютерная сеть, основанная на равноправии участников. (Прим. ред.)
Помните, что правильные кусочки пазла на столе – это первый шаг к их объединению в связную картину.
На этой первой Конференции пиринговых и веб-сервисов О’Райли в 2001 году Клей Ширки подвел итоги перехода к сетевым вычислениям, рассказав незабываемую апокрифическую историю о Томасе Уотсоне-старшем, который был главой IBM во время появления центральной ЭВМ. Уотсон якобы сказал, что он не видит необходимости в существовании более чем пяти компьютеров во всем мире. Клей отметил: «Теперь мы знаем, что Томас Уотсон ошибался». Мы все рассмеялись, подумав о сотнях миллионов проданных персональных компьютеров. Но тогда Клей застал нас врасплох такой концовкой: «Он преувеличил это количество на четыре».
Клей Ширки был прав: для всех практических целей теперь есть только один компьютер. Google теперь работает более чем на миллионе серверов, используя службы, распределенные по этим серверам, чтобы мгновенно доставлять документы и услуги, доступные почти с сотни миллионов других независимых веб-серверов, пользователям, работающим на миллиардах смартфонов и ПК. Это все – одно неделимое целое. Джон Гейдж, научный руководитель компании Sun Microsystems, произнес пророческую фразу в 1985 году, когда провозгласил лозунг Sun: «Сеть – это компьютер».