Если вы пытаетесь разобраться, как что-либо сделать (а не сообщаете об ошибке), начинайте с описания цели. И только потом описывайте конкретный шаг на пути к ней, который вы не смогли выполнить.
Зачастую люди, которым необходима техническая помощь, имеют на уме высокоуровневую цель и привязываются к одному из возможных, по их мнению, путей ее достижения. Они просят помочь выполнить один шаг, не отдавая себе отчета в том, что выбрали неверный путь. Чтобы разобраться в этом, может потребоваться много усилий.
Глупо: Как заставить диалог выбора цвета в программе FooDraw воспринимать шестнадцатеричное RGB-значение?
Разумно: Я пытаюсь заменить таблицу цветов в изображении нужными мне значениями. Сейчас я вижу только один способ сделать это — редактируя каждый слот таблицы, но я не могу задать шестнадцатеричное RGB-значение в диалоге выбора цвета программы FooDraw.
Вторая версия вопроса — разумна. Она позволяет получить ответ, в котором будет предложено средство, более подходящее для решения задачи.
Не просите отвечать на личный адрес электронной почты.
Решение проблем должно быть общедоступным, прозрачным процессом, в ходе которого первая попытка найти ответ может и должна быть исправлена, если кто-то, более знающий, заметит, что этот ответ — неполный или некорректный. Кроме того, отвечающие отчасти вознаграждаются тем, что их компетентность и знания будут замечены коллегами.
Когда вы просите личного ответа, вы мешаете как процессу выработки решения, так и получению «вознаграждения». Не делайте этого. Отвечать лично — это выбор отвечающего, — и если он так и делает, то обычно потому, что считает вопрос слишком неудачно сформулированным или очевидным, чтобы быть интересным другим.
Из этого правила есть одно небольшое исключение. Если вы предполагаете, что на свой вопрос получите множество подобных между собой ответов, не забудьте магические слова «пошлите ответ мне, а я резюмирую полученные ответы в статье для дискуссионной группы». Попытка уберечь дискуссионную группу или список рассылки от, по сути, идентичных сообщений — это очень любезно, но вы должны сдержать обещание и послать итоговое резюме.
Задавайте ясные и четкие вопросы.
Неограниченные вопросы требуют обычно неограниченного времени для ответа. Люди, скорее всего способные дать вам полезный ответ, еще и самые занятые люди (еще и потому, что большую часть своей работы делают сами). Такие люди ревностно относятся к своему времени, и поэтому часто не воспринимают неограниченные вопросы.
Вероятность получения полезного ответа повышается, если вы четко даете понять, чего добиваетесь от отвечающих (предоставить ссылки, послать код, проверить ваше решение
Чтобы понять, в каком мире живут эксперты, надо относиться к знаниям экспертов, как к ресурсу обильному, а к их времени — как к ресурсу весьма ограниченному. Чем меньше времени вы неявно требуете, тем более вероятно получение ответа от действительно хорошего и занятого эксперта.
Поэтому имеет смысл ограничить вопрос, чтобы свести к минимуму время, необходимое эксперту для его решения. Но зачастую это не то же самое, что упростить вопрос. Так, например, вопрос: «Можете ли вы дать мне ссылку на хорошее описание X?» — обычно куда разумнее, чем просьба: «Объясните мне X, пожалуйста». Если у вас проблема с неработающим кодом, разумнее будет попросить объяснить, что в нем не так, а не просить исправить ошибки.
Продолжение следует…
Copyright © 2001 Eric S. Raymond
Перевод на русский язык: Copyright © 2002—2005 Валерий Кравчук