С другой стороны, появись передо мной возможность выбирать между ножом и системой бесключевого доступа, я в мгновение ока избавлюсь от ножа. Когда мне впервые довелось попробовать бесключевой доступ, я уже не представлял, как раньше мог обходиться без него. Это единственная наиболее удобная из всех опция в моем автомобиле, и я пользуюсь ею чаще остальных. В сравнении с ножом я применяю эту функцию в десять раз чаще. При всем ее непроработанном и неудобном устройстве она остается впечатляющим изобретением. Вообразите себе человека, который выводит на городскую площадь огромного медведя на цепи, собирает монетки со зрителей и заставляет медведя пуститься в пляс. Городские жители подтягиваются поближе, чтобы посмотреть на это невиданное зрелище – как большое неповоротливое животное неуклюже топчется на своих кривых лапах. Плясун из медведя никудышный, но зрителей впечатляет не его танцевальное мастерство, а тот факт, что он в принципе совершает пляшущие телодвижения.
Так же и с системой бесключевого доступа – впечатляет не то, что она работает без нареканий, а то, что она вообще хоть как-то работает. И тут я готов терпеливо сносить все проблемы взаимодействия, лишь бы иметь те выгоды, которые она дает мне относительно доступа к моей машине.
С открытием потенциала кремния мы получили столь изумительные возможности, что готовы с легкостью закрыть глаза на связанные с этим затраты. Оказавшись на необитаемом острове, вы вряд ли откажетесь от спасения, даже если к вам подплывет старая ржавая посудина, кишащая крысами. Между решением проблемы и отсутствием решения как такового настолько громадная разница, что мы готовы преодолевать сопряженные с этим трудности.
Сложность решения проблемы не в том, что нельзя разработать более удобное взаимодействие, а в том, что мы привыкли повсеместно соглашаться с использованием некачественных программ, принимая это как неизбежную данность. Завидев на горизонте ветхое проржавевшее спасательное судно, мы не задаем вопросов, какие там удобства, а радостно прыгаем на борт и довольствуемся тем, что имеем.
Экспертам в программном обеспечении приходится привыкать чувствовать себя комфортно при высоком уровне когнитивного сопротивления. Они с гордостью восхваляют свое умение выполнять рабочие задачи, несмотря на неудобства. У обычных же людей, кто только начинает пользоваться каким-либо программным продуктом, недостаточно профессиональных знаний, чтобы судить, как снизить уровень когнитивного сопротивления. Взамен они верят советам компьютерных умников, которые просто пожимают плечами и замечают, что для использования таких программных продуктов нужно обладать «компьютерной грамотностью». Программисты же, в свою очередь, винят во всем технологии, пытаясь объяснить пользователям, что проблемы с взаимодействием – это закономерное свойство всей техники и избежать этого не получится.
Но на самом деле это не так. Избежать сложных взаимодействий вполне возможно.
Источником когнитивного сопротивления являются не сами технологии, а те, кто управляет их разработкой. Они здесь главные, поскольку способны мыслить на языке кремниевых микросхем, и думаю, что этим свойством обладают и остальные. Они являют миру технологические артефакты, которые пытаются разговаривать с пользователем на том же языке, на котором их проектировали. Вместо того чтобы отделать салон автомобиля кожей и деревом, они предпочтут оставить на виду раскаленную сталь и скрежещущие механизмы. Будучи истинными инженерами, они больше задумываются о механизмах, нежели о кожаной отделке, потому и этот интерфейс выражается в терминах из области «реализации». Из-за этого я привык говорить, что такие продукты обладают моделью реализации.
Значительному количеству разработчиков программных продуктов неведомо, как создавать удобные в использовании программы, но вместо этого им хорошо известно, как пичкать их новыми опциями, потому они делают именно это.
Физические объекты, к которым относится мой швейцарский армейский нож, по естественным причинам не приветствуют разрастание новых опций, выходящих за пределы жизненной необходимости. Каждое новое лезвие или приспособление в моем ноже влечет для производителя дополнительные затраты. Создатель ножа отдает себе в этом отчет, поэтому каждая из вновь предлагаемых возможностей проходит этап строгого анализа на предмет необходимости до того, как будет реализована в конечном продукте. На языке инженеров это называется «отрицательной обратной связью» – то есть внутренние силы стремятся стабилизироваться и прийти в равновесие. Например, трение колес автомобиля о дорожное покрытие формирует отрицательную обратную связь в системе рулевого управления, так что, если вы отпустите рулевое колесо, оно будет стремиться вернуться к первоначальному положению.
В индустрии программного обеспечения превалирует иной подход. В связи с тем, что новые опции реализуются в будто бы неосязаемом программном коде, а не в физических материалах вроде стали, меди и пластика, у производителей, привыкших к прошлым условиям, создается впечатление, что опции достаются им почти даром. Им кажется, что программные продукты очень легко модифицировать, дополнять и внедрять в них «улучшения».
В этот самый момент я слушаю музыку Джимми Баффета с компакт-диска в моем компьютере. В небольшой программе-плеере с диска доступно множество разных опций: переход к предыдущему или следующему треку, выбор случайного трека, создание собственного плейлиста, воспроизведение в течение заданного времени, повтор воспроизведения, просмотр информации о Баффете в интернете, добавление альбома в избранное, внесение заметок к разным трекам, загрузка названий композиций из базы данных в сети, просмотр сведений о диске, создание списка избранных треков и много чего еще.
Все эти возможности, несомненно, приятны, и я бы не убирал их без лишней необходимости, но в общей своей массе они делают взаимодействие с программой крайне сложным и запутанным. Более того, когда мне нужно ответить на телефонный звонок и быстро поставить диск на паузу, я не могу найти нужную кнопку, потому что она погребена посреди всего этого огромного количества опций – бесплатных опций. Так что для меня они «бесплатными» отнюдь не являются. Какому-то незадачливому инженеру показалось, будто бы я мечтаю получить все эти бесплатные опции, однако мне просто нужен обычный плеер, в котором можно легко и быстро нажать на паузу.
Говоря о системе бесключевого доступа в моем автомобиле, я сильно сомневаюсь, что хоть кто-то из ее проектировщиков спросил себя: «Какие функции будут нужными и сколько их должно быть?» Напротив, я больше чем уверен, что какой-то младший инженер взял типовую микросхему, которая, по «счастливой» случайности, оказалась двухканальной. Один канал он приспособил для блокировки и разблокировки, а затем вспомнил, что у него есть еще один, лишний «бесплатный» канал. Этот инженер, вполне вероятно, будучи под началом инициативного менеджера по маркетингу – полного энтузиазма, но плохо информированного, – вообразил кажущуюся ему логичной схему, что выключение сигнализации вручную может для чего-то пригодиться. Наверное, он даже гордился тем, что смог предоставить дополнительную функциональность без явных затрат.
Вставить полноценный микропроцессор в ваш автомобильный брелок, микроволновую печь или мобильный телефон гораздо дешевле, нежели использовать отдельные микрочипы и электронные детали. Таким образом, новая технологическая экономика задает направление проектирования. Процесс добавления новых физических компонентов управления все еще сдерживается отрицательной обратной связью затрат на производство, но появление новых функций в программах не может сдержать уже ничего. Добавление новых программных опций представляется создателям программ делом незатратным, так что каждую предложенную опцию они считают хорошим вложением до тех пор, пока кто-то не сможет доказать обратное. В отсутствие регуляторов этого процесса продукты моментально обрастают множеством ненужных опций, что только усложняет процесс использования продукта для пользователя. Разумеется, эти функции представляются как совершенно необходимые преимущества, при этом, конечно, остается и основная, наиболее востребованная функция. Этот медведь уже начал приплясывать.
Что касается настольных компьютеров, то здесь недостаток обратной связи ослабляет их мощь. Разработчик программы воображает, что можно добавить какие его душе угодно функции и при этом они останутся «бесплатными», коль скоро их можно задействовать с помощью мыши и клавиатуры. В результате экраны заполоняют сотни непонятных значков, кнопок, элементов меню, каждый из которых должен реагировать на нажатие клавиш или на клик мыши. И как при этом пользователь должен выявить среди них незначительные опции и те, активация которых может повлечь серьезные негативные последствия?
Практически каждому коммерческому продукту свойственно усложняться с каждой последующей версией. Эволюционируя, программы получают новую функциональность и возможности, так что их интерфейс тоже обзаводится еще большим количеством элементов управления. В компьютерной прессе можно встретить такой термин, как «раздутое программное обеспечение» (bloatwear). Программы, подобные Lotus Notes, Adobe Photoshop, Intuit Quicken и Microsoft Word, так плотно набиты всевозможными опциями, что это сбивает пользователей с толку, тем более что лишь незначительная часть из них используется действительно эффективно, если вообще используется. А тем временем в этой массе всевозможных опций теряются действительно нужные и полезные.
Корпоративные программы страдают от этой проблемы еще больше, чем приложения для конечных пользователей. Компании, подобные Oracle, PeopleSoft, ADP, SAP, Siebel, разрабатывают комплексное программное обеспечение, необходимое для решения внутренних корпоративных задач. Такие программы невероятно сложно и непонятно устроены, а кроме того, перегружены различными опциями. С каждым ежегодным обновлением добавляются все новые и новые опции, а со старыми по-прежнему не представляется возможным разобраться тем, кто не пройдет многомесячное изнурительное обучение.