Часть III. Язык клиента и его устройств
Утро после ночи, в которой было переписано столько, что хватило бы на год, началось на MS DevCon с запаха свежего кофе и звука, которого раньше в зале не было: тишины работающих машин, которым нечего рекламировать.
Eugen и YAPL сидели за тем же столом, но теперь между ними лежал лист бумаги. На листе — одна строка, написанная рукой YAPL, крупно и без украшений:
«Клиент говорит — устройство отвечает».
— Это первое правило, — сказал Eugen. — Но правило только тогда правило, когда у него есть примеры, где оно нарушается. Иначе это лозунг.
— Давай нарушать, — предложил YAPL. — Только понарошку.
Они начали с самого простого. Eugen сказал вслух, как клиент:
— Играть.
Устройство — в их импровизации им был ноутбук, открытый на Game Center, — ответило действием: игра запустилась. Никаких вопросов, никаких баннеров. Чистый диалог.
— Хорошо, — сказал YAPL. — А теперь я — клиент, который говорит то же самое, но устройство у меня из Apple. — Он поднял воображаемый телефон и сказал: — Играть.
— А устройство отвечает: «А может, ты хотел сказать — посмотреть трейлер? Или купить продолжение? Или оценить игру?» — подхватил Eugen, и оба засмеялись, потому что узнали в этой шутке сразу обе платформы.
— Вот оно, первое нарушение, — сказал YAPL серьёзно. — Устройство отвечает не на сказанное, а на предполагаемое. Оно думает, что знает клиента лучше, чем клиент знает себя. Иногда это правда. Чаще — нет. Но даже когда это правда, это всё равно нарушение: клиент просил не совет, а действие.
Eugen кивнул и предложил второе нарушение — своё, родное, со стороны договора.
— Клиент говорит: «Играть». Устройство отвечает: «Для этого подтвердите согласие с пунктом 14, подпунктом 3, а также обновите драйвер, перезагрузитесь и прочитайте уведомление о конфиденциальности». Это тоже не ответ. Это допрос. Устройство отвечает не действием, а анкетой.
— А третье нарушение? — спросил YAPL.
— Третье — самое тихое, — ответил Eugen. — Клиент говорит: «Играть». Устройство молчит. Ничего не происходит. Ни ошибки, ни объяснения. Просто тишина. Клиент не знает, услышали его или нет. Это хуже отказа. Отказ — это тоже ответ. Тишина — это отсутствие языка.
Они записали на листе три нарушения под первым правилом: ответ не на сказанное, ответ анкетой, отсутствие ответа. Лист стал похож на маленькую грамматику — не учебник, а шпаргалку, которую можно положить в карман.
— Знаешь, что мне нравится в этом правиле? — сказал YAPL, глядя на лист. — Оно не требует от устройства ума. Оно требует от устройства внимания. Умное устройство может угадать. Внимательное устройство — слушает. Слушать дешевле, чем угадывать, и честнее.
— И ещё, — добавил Eugen, — оно не требует от клиента правильных слов. Клиент может сказать криво, коротко, с ошибкой. Устройство должно ответить на смысл, а не на форму. Если клиент сказал «играть», а устройство ждёт точной команды «запустить приложение Game Center версии такой-то», — это устройство глухое, как бы умно оно ни выглядело.
К концу утра лист с одним правилом и тремя нарушениями ходил по рукам. Кто-то приписал внизу: «А если клиент молчит?» — и это был уже вопрос следующей главы. Eugen посмотрел на приписку, улыбнулся и сказал YAPL:
— Видишь? Язык уже начал говорить сам. Мы только записали первое правило, а он уже задаёт вопросы.
Эта глава устанавливает первое правило языка клиента и устройств — и именно поэтому она открывает третью часть книги, хотя стоит в её начале: «Клиент говорит — устройство отвечает. Отвечает именно на то, что сказано».
Правило кажется очевидным, пока не проверить его на живых диалогах. Проверка даёт три типичных нарушения, и каждое из них — это не техническая ошибка, а языковое предательство.
Первое нарушение — ответ на предполагаемое вместо сказанного. Устройство угадывает намерение, подменяет просьбу советом, действие — рекомендацией. Даже удачное угадывание остаётся нарушением, потому что клиент не просил угадывать. Он просил действовать. Угадывание крадёт у клиента авторство его же высказывания.
Второе нарушение — ответ анкетой вместо действия. Устройство требует подтверждений, согласий, обновлений, прежде чем сделать то, о чём его просили. Формально оно «отвечает». По существу — откладывает ответ до тех пор, пока клиент не устанет и не согласится на что угодно. Это язык договора, выродившийся в допрос: точность без внимания.
Третье нарушение — отсутствие ответа. Тишина, зависание, ничего не значащий кружок загрузки. Клиент не знает, услышан он или нет, и начинает повторять просьбу громче, злее, отчаяннее — как человек, который кричит в пустую комнату. Отказ, объяснённый честно, — это ответ. Тишина — это отказ от языка вообще.
Запомните: хорошее устройство отличается от плохого не умом, а вниманием. Умное устройство знает много. Внимательное устройство слушает одно — то, что сказано сейчас, этим клиентом, в этой ситуации. Всё остальное — контекст, а не подмена. Именно внимание делает первое правило выполнимым на любой платформе: и на стороне Eugen, где всё проверяется, и на стороне YAPL, где всё угадывается. Внимание — это середина между договором и жестом.
Запишите три своих вчерашних диалога с устройствами: один удачный, один раздражающий, один, где вы не поняли, что произошло. Для каждого определите: было ли соблюдено первое правило? Отвечало ли устройство именно на сказанное — или на предполагаемое, анкетой, молчанием?
Теперь перепишите раздражающий диалог так, чтобы первое правило соблюдалось. Не меняйте просьбу клиента — меняйте только ответ устройства. Что именно должно было произойти сразу после вашей реплики? Одно действие, одна фраза, одно подтверждение — не больше.
Если переписанный диалог стал короче оригинала в два раза, вы нашли главное: первое правило — это не философия, а экономия. Оно экономит время, внимание и доверие. А доверие, как мы уже знаем из предыдущих глав, — это единственная валюта, которую нельзя напечатать заново.
Назовите три нарушения первого правила «Клиент говорит — устройство отвечает» — и объясните, почему даже удачное угадывание намерения клиента остаётся нарушением, а честный отказ — нет.