Человечество еще послужит хотя бы контролируемой информационными сетями питательной средой самовоспроизводства денег. У массовости есть много полезных свойств, и задач минимального заполнения каких-либо ковчегов только обладателями уникальных свойств пока нет и не предвидится ни у людей, ни у машин. А там, может быть, и с уязвимостями разберемся, и еще какие перспективы откроются.
С другой стороны, если у тех же древних египтян было что-то вроде Интернета, мы никогда об этом не узнаем. Материальные свидетельства в распределенную многослойную модель никогда не сложатся, и остается только гадать, как же древние египтяне пришли к письменности на пиктограммах. Подсмотрели они это, что ли, где-то? Неужели вот так на ровном месте сами придумали? И может ли непогрешимая неприкосновенная каста жрецов быть связана с тем, что одна часть населения утратила навыки исходной письменности, а другая сохранила и объявила священными? Их сверхценность в век Интернета не только понятна, но даже ощутима.
Все, что в наших руках
Поначалу шедшее размеренно повествование о смысле и назначении глобальных информационных сетей начинает звучать все более зловеще. Прежде чем нагнетание ужаса примет неуправляемый характер, вспомним о том, что соотношение уязвимостей и возможностей работает в обе стороны. Оборотной стороной каждой нашей слабости всегда останется соответствующая сила.
Подытожим список уязвимостей, о которых мы недавно поговорили, и теперь хотели бы начать хотя бы как-то контролировать:
• созданные для творчества информационные сети фактически используются в направлении наименьшего сопротивления;
• однородный информационный шум нарастает постоянно и произвольно;
• навыки извлечения пользы из нарастающего шума требуют постоянных волевых усилий и осознанной практики;
• в нарастающем информационном шуме навыки, сопутствующие письменности, массово деградируют;
• в этих условиях выход к позиции, с которой начало творчества вообще возможно, представляет отдельную проблему.
В играх вероятного мы освоим, как не растворяться в информационном шуме, извлекать пользу из нарастающего шума и находить удобный информационный ритм. Рассуждение о творчестве ждет нас уже в следующей части – про игры возможного.
Раз уж открыт доступ ко всем этим крайне неприятным уязвимостям, давайте постараемся получить по максимуму положенные возможности. Погружение в общие принципы построения информационных сетей поможет нам разобраться во внутренней механике человеческих процессов, благодаря которым формируются навыки написания кода (назовем его технической письменностью). Так мы сможем искать путь из нарастающего шума к творчеству не наугад и наощупь, а путем выделения ключевых проблем, четко ставя задачи и отлаживая процессы их решения.
Всеобщий язык Интернета
Разберем механику доставки потокового видео между Интернетом и его пользователями. Здесь нас особенно интересует полное отсутствие письменности в непосредственно необходимом пользователю контексте и процессе коммуникации. Раз уж мы можем не отвлекаться на пользовательскую письменность, попутно рассмотрим подробности того, что здесь должно быть написано и реализовано на языках программирования и с точки зрения прочих технических стандартов и спецификаций.
На уровне Network Access реализуется абстрактный интерфейс доступа к сети. Абстрактность здесь выражается в том, что подключение узла доступа к провайдеру Интернета с одной стороны и к пользовательскому устройству с другой определено стандартом, допускающим разнообразные фактические реализации. Как именно реализовано подключение, не важно, если соблюдается стандарт. Подключение будет работать до тех пор, пока верны стандартизованные форматы сигналов, проходящих через узел доступа в обоих направлениях.
К провайдеру мы можем подключаться по беспроводному спутниковому каналу или через мобильную сеть, с помощью оптоволоконного или любого другого подходящего кабеля. Даже если бы мы подключались через проводную телефонную сеть, это все бы работало примерно одинаково, разве что значительно медленнее. Сейчас, правда, найти проводную телефонную сеть, по которой можно подключиться к Интернету, пожалуй, почти невозможно, зато это так и остается удачным фрагментом иллюстрации принципа абстракции.
В мобильных телефонах узел доступа физически находится внутри устройства, поэтому использование мобильных телефонов в качестве Wi-Fi роутеров – распространенная практика. Также широко используются выделенные Wi-Fi роутеры, раздающие беспроводной доступ в сравнительно небольшом радиусе своего действия. В некоторых помещениях, впрочем, проводное подключение пользовательских устройств к роутерам может быть более целесообразным, если сложность и неудобство прокладки проводной сети компенсируется необходимым улучшением качества и скорости соединения.
Для протоколов уровня Network Access все эти различия одинаково приемлемы. При соблюдении требований протокола подключения к Сети мы можем пользоваться любыми техническими средствами любых видов, производителей и моделей. Унифицированные коммуникационные протоколы обеспечивают возможность гибкости фактических технических решений.
На уровне Internet фактическое местонахождение запрашиваемого сервера и физическая последовательность передачи и ретрансляции сигнала до него не имеет никакого значения. Есть только его IP-адрес (IP от Internet Protocol), с которого он может отправлять и на который он может получать пакеты данных, так называемые датаграммы (datagrams).
На транспортном уровне сначала устанавливается двухстороннее соединение между сервером и клиентом (так чаще всего называется пользовательское устройство). Затем вся передаваемая информация, независимо от объема, формата, содержания, темпа передачи и прочих, не относящихся к самому протоколу передачи свойств, будет сопровождена технической информацией для контроля корректности передачи и обработки ошибок. Затем целевая информация, дополненная техническими данными, будет упакована в подходящие установленному соединению датаграммы и передана с адреса отправителя на адрес получателя. Для установления безопасного соединения используется асимметричное шифрование, для передачи данных по уже установленному соединению – симметричное. Это обеспечивает криптографическую защиту передаваемых данных – далеко не абсолютную, но вполне достаточную для того, чтобы попытки взлома были нецелесообразно дорогими и долгими.
На уровне приложения сервер по запросу клиента генерирует веб-страницу на языке разметки гипертекста (HTML, HyperText Markup Language), к которому прикреплены каскадные стилевые таблицы (CSS, Cascade Style Sheets) и исполняемый в браузере клиента код на языке JavaScript. Сгенерированная веб-страница по протоколу передачи гипертекста (HTTP(S), HyperText Transfer Protocol (Secure)) передается на транспортный уровень, упаковывается в датаграммы, отправляется по IP-адресу на узел доступа клиента, который, в свою очередь, пересылает полученные данные непосредственно на пользовательское устройство. Оно, в свою очередь, по полученному описанию строит пользовательский интерфейс, настраивает дополнительное получение данных с сервера, буферизацию больших объемов данных и запускает запрошенное пользователем видео.
То есть, человек включил гаджет, ткнул в значок приложения, и уже через доли секунды может и смотреть, и транслировать видео со своего устройства. И там дальше – шортсы, рилсы, видеоинструкции, видеоуроки, видеогайды, песни, пляски, жесты, язык тела, все сразу понятно, в общем, и интересно очень. Или вовсе что-то про животных, собакенов, например, или котеечек, или видеосамодеятельность «лидеров мнений» каких, или еще что-нибудь. Как оказалось, видов человеческой деятельности, не связанных с письменностью, довольно много, вот прямо до обидного