Изменить стиль страницы

Что такое вежливость?

Что представляет собой дружелюбная к пользователю, или вежливая программа? Каким образом ее поведение может стать более похожим на человеческое? Продавцы подержанных автомобилей одеваются красиво, улыбаются широко, переполнены заманчивой информацией, но становятся ли они от этого приятными? Люди совершают ошибки, медленно думают, импульсивно действуют, но из этого не следует, что программа, обладающая подобными свойствами, хороша. Некоторые люди обладают особыми качествами, и эти качества делают их подходящими для работы в сервисном обслуживании. Программное обеспечение всегда находится в такой роли.30

Большинство хороших разработчиков программного обеспечения испытывают затруднения, когда им приходится проектировать вежливость. Роберт Кринджели (Robert Х. Cringely) говорит о программистах:

Они выразительны и точны до чрезвычайности, но лишь когда им этого хочется. Их внешний вид намеренно подчеркивает личные приоритеты, а не свидетельствует о лени. Режим общения у них настолько регламентированный, что иногда, кажется, будто они не способны общаться. Назовите его Майком, если он называет себя Майклом, и почти наверняка он не ответит, поскольку с его точки зрения маловероятно, что вы обратились к нему31.

Можно видеть, как понятие «вежливость» или даже «человечность» может стать камнем преткновения, попроси мы программистов интерпретировать столь нечеткие концепции. Они сражаются против идеи превращения компьютеров в объекты с более человеческим поведением, потому что считают людей слабыми и несовершенными вычислительными устройствами.

Как-то я спросил своего друга Кейта Плиса (Keith Pleas), а он широко известен в сообществе разработчиков как сложившийся профессиональный программист, чувствительный к вопросам, связанным с пользовательским интерфейсом, о том, как сделать программы более человечными. Кейт интерпретировал «человечность» как внесение неточностей во взаимодействие. Он ответил:

Что, компьютер будет говорить неправду? Будет сообщать, что на банковском счету осталось «примерно $500»? Будет давать не тот ответ, который минуту назад дал кому-то еще? Если мы добавим человечности, это сделает наши системы менее компьютерными, по крайней мере, относительно текущей ситуации.

Реакция Кейта, как программиста, вполне естественна. Верно, компьютер не сообщает примерные суммы на балансах счетов, а еще компьютер не видит разницы между ответом «примерно $500», полученным за десятую долю секунды, и ответом «ровно $503,47», полученным за семнадцать минут. Действительно вежливая, более человечная программа сразу ответит, что на счету «примерно $500», а затем уведомит пользователя, что через несколько минут сможет сообщить более точную цифру. Теперь пользователь решает, тратить ли ему дополнительное время на более точный результат. Это принцип соразмерности усилий: если вы нуждаетесь в большем количестве информации, то подождете, пока она будет получена.

Что делает программы вежливыми?

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

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

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

Вежливая программа интересуется мной

Вежливая программа относится ко мне уважительно

Вежливая программа обходительна

Вежливая программа ведет себя разумно

Вежливая программа предвидит мои потребности

Вежливая программа отзывчива

Вежливая программа не склонна делиться своими личными проблемами

Вежливая программа в курсе происходящего

Вежливая программа проницательна

Вежливая программа уверена в себе

Вежливая программа всегда сосредоточенна

Вежливая программа покладиста

Вежливая программа дает мгновенное удовлетворение

Вежливой программе можно доверять

Вежливая программа интересуется мной

Друг интересуется мной, интересуется тем, кто я такой, и тем, что мне нравится. Он запомнит мои предпочтения и антипатии, чтобы в будущем сделать мне приятное. Любой человек, оказывающий услуги, прилагает сознательные усилия, чтобы запомнить лица и имена клиентов. Некоторым нравится, когда к ним обращаются по имени, некоторым – нет, но каждому нравится отношение, учитывающее его личные вкусы.

Программы в массе своей не знают, кто их применяет, да и знать не хотят. Если говорить о моем персональном компьютере, то ни одна из персональных программ на нем не помнит ни меня, ни фактов обо мне. Факт остается фактом, несмотря на то, что компьютером постоянно, раз за разом, эксклюзивно пользуюсь я и никто иной. Ларри Кили шутит, что писсуар с автоматическим смывом в уборной аэропорта осознает его присутствие в большей степени, чем настольный компьютер.

Каждый фрагмент любой из этих программ должен усердно трудиться, запоминая мои рабочие привычки, и особенно все, что я сообщаю для программиста, пишущего программу; мир представляет собой генератор информации, необходимой в конкретный момент времени, поэтому если программе нужен какой-то клочок информации, она просто требует эту информацию от пользователя. Затем бездумная программа выбрасывает полученные сведения, предполагая, что при необходимости спросит заново. Компьютер очень хорошо подходит для запоминания информации, так что с его стороны забывать невежливо.

К примеру, в записной книжке моей почтовой программы одиннадцать человек с именем Дэйв. С большинством из них я общаюсь редко, но среди этих людей мой лучший друг Дэйв Карлик (Dave Carlick), которому я постоянно отправляю сообщения по электронной почте. Когда я создаю новое сообщение и набираю в поле адресата неоднозначное имя «Dave», то ожидаю, что программа на основе моего поведения в прошлом сделает вывод, что я имею в виду Дэйва Карлика. Если я захочу отправить сообщение другому Дэйву, Дэвиду Фору, например, то наберу «Dave F», «D4», «David Fore» или что-то подобное, чтобы указать на необычность своего выбора. Но нет, программа каждый раз открывает диалог, заставляя меня выбирать, какого из одиннадцати Дэйвов я имею в виду. Программе на меня наплевать, она считает меня незнакомцем, хотя я – единственный известный ей человек.

Вежливая программа относится ко мне уважительно

Любой работник сферы обслуживания относится уважительно к своим клиентам. Он понимает, что клиент всегда прав, и должен получить то, что желает. Когда в ресторане метрдотель провожает меня к столику, я считаю его выбор столика предложением, а не приказом. Высказав вежливый протест и выбрав другой столик в пустом ресторане, я ожидаю, что мое желание удовлетворят немедленно. Получив отказ, я, вероятно, уйду и выберу другой ресторан, где мои желания ставятся выше желаний метрдотеля.

Невежливая программа контролирует действия человека, которого всегда считает недостаточно компетентным. Приемлемо, если программа высказывает мнение, что я допускаю ошибку, однако не приемлемо, если она судит мои действия. Точно так же допустимо, если программа предполагает, что я не могу отправить заявку («Submit»), пока не укажу номер социального страхования, но если я все-таки отправлю заявку, не указывая свой номер социального страхования, то ожидаю от программы повиновения. (Само слово «Submit»32 и обозначаемое этим словом понятие антиподы уважительного отношения. Программа должна подчиняться пользователю, поэтому любая программа, предлагающая кнопку Submit, де-факто невежлива. Обратите на это внимание, держатели активных веб-сайтов.)

вернуться

30

Примечательным исключением из этого правила являются игры. Во многие игры стало бы скучно играть, если бы не скрытые факты, непонятные процессы и нечеткие цели.

вернуться

31

Robert X. Cringely «Accidental Empires, How the Boys of Silicon Valley Make Their Millions, Battle Foreign Competition, and Still Can’t Get a Date», Addison-Wesley, 1991.

вернуться

32

В переводе с английского слово «submit» имеет значения «подчиняться», «покоряться», а также «представлять на рассмотрение». В программах и на веб-сайтах речь идет о последнем, однако это значение не является для слова «submit» основным. – Прим. перев.