На этой стадии у вас появляется вполне рабочая версия компьютера. Вы можете запускать любые существующие программы только лишь с помощью Linux. Однако его интерфейс основывается на текстовых командах и не слишком интуитивно понятен – на компьютерах Mac, например, работает своя операционная система OS X с ее известнейшим интерфейсом. Он называется графическим пользовательским интерфейсом (GUI, graphic user interface). GUI был одной из самых инновационных идей Стива Джобса: он понял, что командные интерфейсы слишком сложны, поэтому распространял практику использования иконок поверх текста, помогая ориентироваться на экране. Джобс узнал о графическом пользовательском интерфейсе и мыши у Алана Кэя, исследователя лаборатории Xerox PARC, в 1973 г. выпустившей обе эти технологии. И хотя мы любим приписывать кому-то конкретному лавры инновационных технологических побед, на самом деле редко когда за компьютерной инновацией стоит один человек. Если присмотреться, всегда можно найти логического предшественника, а также команду специалистов, которая разрабатывала проект месяцами, если не годами. В свое время Джобс заплатил за экскурсию по Xerox PARC, увидел проект GUI и запатентовал его. Графический интерфейс в дуэте с мышью от Xerox PARC – это производная от более ранней идеи, системы oN-Line System (NLS), представленной Дугласом Энгельбартом в презентации «Мать всех демо» (Mother of All Demos) в 1968 г. на конференции Ассоциации вычислительной техники. Мы рассмотрим эту историю подробнее в главе 6.
Следующий слой – тоже программный, работающий поверх операционной системы. Веб-браузер (вроде Safari, Firefox, Chrome или Internet Explorer) – это программа, которая позволяет просматривать веб-страницы. Microsoft Word – текстовый редактор. Компьютерные видеоигры вроде Minecraft – это тоже программы. И каждая из них спроектирована таким образом, чтобы пользоваться возможностями разных операционных систем. Поэтому, например, на Mac нельзя запустить программу для Windows (если только вы не используете эмулятор, очередную программу). Программы спроектированы так, чтобы ими было легко пользоваться, при этом они устроены достаточно хитроумно.
Усложним? Представьте, что вы журналист и ведете еженедельную колонку о котах. Для этого вы используете программы. Большинство ваших коллег пользуются текстовыми редакторами вроде Microsoft Word или Google Docs. Обе эти программы можно запускать как на отдельном компьютере, локально, так и посредством облака. Под локальностью понимается то, что программа работает на аппаратном обеспечении вашего компьютера, а в облаке – означает, что программа запускается на чьем-то еще компьютере. Конечно, метафора облака весьма поэтична, однако в реальной жизни облако – это «другой компьютер, находящийся, вероятно, вместе с тысячей других компьютеров на огромном складе где-то среди трех штатов». Текст, который вы создаете, по-настоящему уникален, он рождается в вашем воображении: ваша изящная, выразительная, с любовью написанная история о котах, катающихся на пылесосах Roomba, или о чем угодно еще. Для компьютера каждая история одинакова – всего лишь куча нулей и единиц, хранящихся где-то на жестком диске.
Закончив историю, вы сохраняете ее в системе управления контентом (CMS, Content Management System), чтобы ее мог прочитать ваш редактор и в конце концов читатели. CMS – важнейший элемент программной экосистемы современных медиа. Ежедневно они обрабатывают сотни и тысячи историй. Каждая из них релевантна в конкретное время дня; они все находятся на разной стадии редактирования (или хаоса); у каждой есть отдельный заголовок для печатной и онлайн-версии, определенные цитаты для размещения в социальных медиа; в каждую историю встроены изображения, видео, визуализации данных или код; они все созданы людьми, которые ждут похвалы, оплаты или указаний; и все это происходит 24 часа в день, 365 дней в году. Масштаб впечатляет, ничего не скажешь. Было бы глупо пытаться управлять всем этим безумием без какого-либо софта. CMS как раз и есть такой инструмент для управления историями, изображениями и всем, что публикуется онлайн или печатается изданием.
CMS позволяет отображать каждую статью в стандартизированном дизайне так, чтобы все они выглядели единообразно. Это хорошо с точки зрения брендинга, практично. Ведь, если бы пришлось разрабатывать отдельный дизайн для каждой истории, на ее публикацию уходила бы вечность. Вместо этого система автоматически оформляет текст, который вы, репортер, загружаете в CMS, в избранном дизайне.
Теперь подумаем над тем, что выбрать, какие элементы шаблона использовать, чтобы сделать историю визуально приятнее для читателя. Используете ли вы цитаты? Гиперссылки? Будете ли внедрять в текст посты пользователей социальных сетей? Все это и есть принимаемые вами дизайн-решения, которые в том числе влияют на впечатление читателя.
Наконец, история должна увидеть свет. Веб-сервер, другой элемент программной экосистемы, передает вашу историю из CMS напрямую читателю. Последний просматривает ее с помощью веб-браузеров вроде Safari или Chrome. Веб-браузеры иногда еще называют клиентами: идея в том, что веб-сервер предоставляет клиенту историю (которую CMS конвертировал в страницу HTML). Модель клиент-сервер, перманентный круговорот информации – вот как устроена сеть. Термины клиент и сервер пришли из области ресторанного бизнеса. Поэтому эту модель можно понять, представляя официанта, приносящего блюда посетителям ресторана.
Такой процесс (в той или иной степени) лежит в основе каждого запроса в интернете. Он подразумевает как множество шагов при выполнении операции, так и массу возможностей для ошибок. Я серьезно: удивительно, что чаще всего все действительно работает.
Каждый раз, пользуясь компьютером, вы обращаетесь к сложному набору слоев. За ним не стоит никакой магии, хотя результаты работы вполне впечатляют. Понимать техническую реальность важно, поскольку это знание поможет разобраться, как, почему и где что-то пошло не так в компьютеризированном сценарии. И даже если вам кажется, будто компьютер разговаривает с вами либо вы ощущаете какую-то связь с ним, на самом деле происходит взаимодействие вас с программой, написанной человеческим существом с собственными мыслями, страхами, предубеждениями и историей.
Иногда это выглядит забавно. В 1966 г. было весьма интересно общаться с Элизой, ботом, способным отвечать на вопросы подобно последователям Карла Роджерса. Сегодня в Twitter можно найти ботов, которые общаются с пользователями на основе диалоговых паттернов, разработанных для Элизы. Простейший поисковый запрос выдаст достаточно примеров кода этой программы
[7]. Ответы Элизы обусловлены прежними репликами пользователя, в том числе:
Неужели ты не веришь, что я могу
Возможно, вы хотели бы иметь возможность
Вы хотите, чтобы я