Этот, ну тот. Теряем контекст
Сначала немножко про людей, потом про код — ниже по тексту.
Знаете, как затянуть обсуждение любого вопроса на лишние бесполезные 5-50 минут, а то и просрать вовсе?
Использовать в диалоге отсылки вида «тот», «там сделали», «когда раньше», «было у них», «снова», следом обобщения «ничего», «везде», и односложные согласия.
В принципе, «не делать так» — можно было бы просто записать в рецепты.
И я именно это писал, для сотрудников.
Плохой пример
— там прямо сейчас всё сломано
Проверяем:
— там (где?) прямо сейчас (время?) всё (что?) сломано (в смысле?)
Исправляем:
— в системе АА на вебе с 10:00 не работают базовые функции, начиная с логина
Но сам вопрос несколько сложнее.
Почему. Потому что коммуникация бывает разная. Немножко уже упоминал, когда писал про следующий шаг. Задайте самостоятельно к своему сообщению проверочные вопросы, и заранее разверните и раскройте контекст так, чтобы он читался одномоментно. Сразу.
Сложность в том, что коммуникация бывает и асинхронная, и односторонняя. Где вы никакого понятия не имеете о том, знает ли адресат, о чем вы вообще говорите. Адресат, соответственно, понятия не имеет, что происходит в вашей голове, и на что вы ссылаетесь в речи.
Некоторые виды коммуникаций не умеют в контекст, органически. Так они устроены. Когда вы пишете письмо человеку текстом, между вами и человеком — не только километры, но также часы календарного времени, различные сферы внимания, занятий, разная доступность свободного времени и даже разные фазы луны. «Помнишь, там…» не сработает. А телепатию пока не завезли.
(электропочта решала этот вопрос механизмами цитирования и «ответа на ответ», но помогало не сильно)
В лекциях я часто приводил пример о перегруженных интерфейсах. Действительно, на экран мобильного устройства можно запихнуть достаточно много информации. И еще больше можно сделать подразумеваемой. Ты что, не можешь запомнить три кнопки, которые сам нажал?
- разработчик софта мыслит в рамках понятийного контекста, созданном внутри софта. Всё внимание разработчика отдано экрану приложения, он так со вселенной будет взаимодействовать, вот его детище. Они что, читать не умеют?
- а пользователю категорически всё равно. В мире пользователя на телефоне запущена дюжина аппликух, сыплются уведомления, вокруг улица, ездит транспорт, орут дети, происходят биржевые кризисы, жене надо выбрать подарок, а, да, вот еще что-то приложение от меня хочет. Сейчас достану из заднего кармана на морозе в перчатках.
Не только не умеют читать, но и не будут. И голову включать не будут, думать не будут (вот еще). Голова пользователя занята явно более важными — для него — вещами, чем хотелки вашего приложения.
Не надо забывать, что ваше место, и место вашего приложения, для пользователя в его мире — где-то около заднего кармана джинсов.
По-русски — в жопе.
Текстового одностороннего общения — текстов, рекламы, инструкций, писем — касается аналогично.
Сидит недалекий маркетолог (или даже владелец бизнеса), и грезит о том, что он сейчас скажет всему миру «теперь ставки по кредитам нашего банка на 3% ниже!», ка-а-ак все сразу всё осознают и побегут к нему.
Ведь в его мире это максимально весомый шаг: минус 3% со ставки в (допустим) 8% означает, что за вычетом 2% оп.расходов это вдвое (!) снижена маржа банка. Это царский скидос в 50% по сути, и это на фоне осеннего падения одобряемости, и можем себе такое позволить.
Значит зеленый-то банк наконец-то нагнул синий, вот и всё, вот и доказали кто здесь папа, вот и началось! Как вообще можно не понять такого фундаментального захода, вы что там, уснули все?!
Читателю категорически насрать, он искренне не понимает и не хочет понимать, о чем идет речь. Это не в его мире происходит, и контекста у читателя никакого на этот счет нет, и не передано.
«Теперь» — а какие они вообще были то? «Нашего банка» — какого? Их только в Питере пятьдесят. «На 3% ниже» — ниже чего? А какие они должны быть? Ниже — это как в слове «выгоднее», или как в слове «меньше денег дадут»?
Почему это вообще должно волновать меня? Цифры — может, вы их сначала подняли на 10%, а потом опустили на 3%, или как там у вас банкиров принято? Может у этого банка минус три, а у соседнего минус пять, и какой из них ваш?
Контекст, на который в своей голове ссылался автор, в сообщении не передан никак. Это разговор глухих, он не сойдется.
Общение программной системы с внешним миром — это тоже общение. Которое писали разработчики, а иногда и более способные люди. Совсем плачевно обстоят дела с подобным общением в ситуации реактивной (от слова реакция), когда система вынуждена отреагировать, и даже что-то захотеть.
Ссылаться на любые контексты, состояния, цепочки действий, предполагаемые знания — нельзя. Всю информацию для принятия решения следует раскрывать сразу.
Для тех, кто не знаком: человек открывает редактор, чтобы начать работать, и видит вот это. Вместо работы от нас что-то хотят. Что-то про доверие/trust.
Что здесь не так. Окно похорошело с прошлой версии — добавилась папка с кодом, о которой идет речь. Раньше и её не было.
Но несмотря на кило текста, какое решение я должен принять? Что значит «trust» и какие «features» предполагается включить? Выполнение абстрактных файлов. Но зачем, и каких именно? Может, они мне нужны, как я могу знать, если вы мне их даже не показываете?
Большинство ткнет подсвеченную кнопку, чтобы не включать мозг. Поведение неудачное (нам говорят, что пострадает безопасность).
Даже если отбросить наглядную шутку про «возможно невозможно» (переводчик изнасиловал программиста), все равно к такой коммуникации больше вопросов, чем ответов. «Повышение режима работы» с какого на какой? Вероятно, на какой-то злой, раз спрашивают.
Какого домена, exactly? Что значит «невозможно», а если сервак выключу из розетки? А чем повышение грозит? Если вы такие страшные, что сломается то? И у кого, прям у меня, или пользователи придут с вилами? Сомнения.
Даже шаги в «пошаговых помощниках» малое, но зло. Приложение *** банка просит меня на одном экране указать получателя денег, а затем, на втором, указать сумму. Если сумма больше, чем карманные расходы: перед нажатием необратимой кнопки с какой вероятностью вы захотите проверить, кому пойдут деньги -? Разумеется, на втором экране этой информации нет.
В мире разработчика же всё очевидно, выбрал одно, выбрал другое.
В мире пользователя операционная память девичья (восемь метров) и занята чем угодно, но явно не тем, чтобы догадываться о поведении софта. А поведение просто немного бесит.
Как вариант, для сложных и важных моментов используйте отдельное (сводное) явное подтверждение, «вот что конкретно сейчас произойдет». Не надо мучить человека додумыванием и догадыванием, не тратьте его внимание, ему всегда не до вас.
Да и отмену предусмотреть не лишне. Больше предсказуемости, меньше рисков, значит и париться меньше.
Вернемся к контекстным отсылкам, из начала статьи.
Тот, этот, туда, там, и т.п.
Проверочное правило 1: если собеседник и получатель сообщения не сидит прямо сейчас перед вами, то контекстные отсылки следует раскрывать, в идеале — до фактов. Или избегать их вовсе.
Проверочное правило 2: если взаимодействие предполагает шаги и этапы (или просто длиной более 10 минут), то либо общий контекст должен быть доступен и раскрываться моментально, либо должна быть сводная summary для ясности восприятия.
Проверочное правило 3: убедитесь, что вы общаетесь с адресатом в его мире, а не в своем. Об этом много у Ильяхова, кстати, написано.
- Текст в мире читателя, 2019
- 5 тысяч чашек кофе, 2017
- Поиск по блогу: в мире читателя
Дядя Максим также постулирует: чтобы меньше косячить с контекстами, нелишне будет проработать структуру. Тоже посмотрите.
- Структура в мире читателя, 2015
- Критерии качества (текста, а не информации, но не суть), 2014
Если вы проектируете человеко-машинное взаимодействие, т.е одной стороной коммуникации выступает машина/система, то
проверочное правило 4:
- машина обязана помнить детали, и раскрывать их без напоминаний и контекстов — она железная, все детали доступны,
- человек не обязан помнить детали и догадываться — он человек, ему можно.
Но про «возможность помнить» (и забывать) потянет снова на отдельную статью.
Это отложим на попозже.
Вопрос написания хороших полезных задач в том числе связан с раскрытием контекстов, take a look.