Да, в отношении удобства и сплоченности придется чем-то поступиться, но в большинстве случаев сообщества разработчиков лучше себя чувствуют на публичных модерируемых форумах, чем в приватных каналах на Slack, где ничего толком не найдешь.
Между ПО для форумов (к нему относятся nodebb, forem, discourse и прочие) и ПО для чатов (Slack, группы Facebook, Discord) существует ряд принципиальных отличий. Поэтому, прежде всего, вам нужно понять, что именно у вас в приоритете. Если вы хотите как можно быстрее получать отклик от небольшой группы пользователей, тогда лучше обратиться к синхронным решениям. Они дадут возможность моментально реагировать на обращения, пользователи почувствуют вашу любовь, а вы сможете оперативно собирать обратную связь. Синхронные решения, однако, не ограничиваются чатами – есть еще телефоны и видеосвязь. Впрочем, рассуждения о том, как работать с обратной связью на ранних этапах развития проекта, к теме данной статьи не относятся.
Суть в том, что, когда вы пытаетесь организовать растущее сообщество при помощи инструментов для синхронного общения, возникают проблемы с сохранением ценных сведений на долгий срок.
Проблема первая: провалы в памяти
Сложности возникают в тех случаях, когда на распространенный вопрос уже давался хороший ответ, но он либо недоступен, либо требует долгих поисков. Особенно остро эта проблема стоит для Slack, так как на бесплатных тарифных планах там сохраняется не больше 10 000 сообщений.
Но у Discord и прочих платформ в этом отношении тоже не всё радужно – старые сообщения у них уходят далеко наверх, а поиск работает неважно. С точки зрения участника чата, проще спросить еще раз. Если сообщество отличается отзывчивостью и готовностью помогать новичкам, то подобные повторяющиеся вопросы получают ответы. Если нет, то никто не обращает на них внимания и обсуждение увядает на корню. Это вызывает у новоприбывших досаду, что не ведет ни к чему хорошему.
Участники группы могут самостоятельно устранять провалы в памяти, вынося интересные сообщения из чатов в отдельные посты на других платформах. Я и сам так делал: обобщал сказанное в чате и распространял информацию из сообщений в виде постов в блоге, почтовых рассылок и даже таблиц Google. Но это дополнительная работа, не факт, что кто-то будет заниматься ей регулярно (или вообще).
Примечание: в некоторых сообществах, где люди больше обсуждают текущие события или просто болтают о том о сем, это не баг, а фича. В беседах между друзьями не имеет особого значения, кто что говорил полгода назад. Однако в сообществах разработчиков обмен знаниями играет не меньшую роль, чем дружеское общение, а провалы в памяти ощутимо мешают делиться сведениями.
Форумы же, напротив, рассчитаны на то, чтобы их читали. На nodebb даже реализована функция, которая при открытии темы выводит другие посты со схожим содержанием – это подталкивает людей искать ответ на свой вопрос в старых сообщениях и может избавить их от необходимости спрашивать самим.
И еще одно: когда размещаешь сообщение на форуме, его индексирует Google.
Проблема вторая: Google не заглядывает в чаты
Google – это основной пользовательский интерфейс для сбора знаний у разработчиков. Надеюсь, с этим утверждением никто спорить не станет. Оно не только основывается на моем личном опыте и наблюдениях, но и подтверждается некоторыми результатами исследований. Мне часто приходилось видеть, как разработчики, столкнувшись с затруднением, шли прямым ходом в Google. Youtube, книги, поиск по конкретным сайтам – все эти альтернативные способы разрешения вопросов пользуются гораздо меньшей популярностью.
Google до такой степени упростил доступ к целому массиву полезной информации, что большинство разработчиков давно заучили алгоритм: если возникает проблема, открыть поисковик, забить запрос и положиться на те сведения, которые выпадут на первой странице. Чаты плохо вписываются в этот обкатанный алгоритм, так как всё их содержимое оказывается скрытым.
Это означает, что сообщество разработчиков, разместившееся в чате, не создает совокупной выгоды от удачных ответов или вдумчивых наблюдений участников, которые было бы полезно почитать и другим людям. Как только пройдет момент изначальной публикации, практически никто ими больше не воспользуется. А те, кто при этом не присутствовал или не подтянулся в скором времени, вообще не получат доступа к информации.
Проблема третья: синхронное общение синхронно
Когда сидишь в чате, всё, что говорится, эфемерно. Иными словами, ценное замечание может пройти незамеченным, если потонет в массе других сообщений.
Иногда это приводит к тому, что людям кажется, будто ими пренебрегают, хотя на самом деле, они просто отправили сообщение в неудачный момент. Подобные ощущения отбивают желание общаться. Я тоже, бывало, испытывал раздражение, когда на мой вопрос или комментарий никто не обращал внимания, хотя вопросы других людей получали ответы. «Это что, во мне дело? Или тема не та? Может, мне здесь не так рады, как другим участникам?»
На людей, которые любят отвечать на вопросы, часто давит необходимость давать ответы сразу же. Это может создавать препятствия для глубокого погружения в работу. Потребность реагировать выходит на уровень условного рефлекса, я сам на себе это испытал. Ответить на вопрос и помочь одному человеку доставляет больше удовольствия, чем работать над документом, который поможет многим, потому что в первом случае можно получить зримый и немедленный результат. Выбирая платформы для онлайн-чатов, вы создаете оптимальные условия для подобных реакций.
Проблема четвертая: менее совершенные инструменты для модерации
Форумы существуют уже долгое время. Их проблемное поле хорошо изучено. Для большинства из них представлен богатый набор возможностей, рассчитанный на нейтрализацию самых неприятных сторон управления онлайн-сообществом (см. также статью A Group is its own worst enemy).
В чатах поддержка для этих аспектов реализована неровно. Я слышал, что Discord справляется неплохо, а вот Slack – значительно хуже.
Не забывайте: если вы организуете онлайн-сообщество, то неминуемо столкнетесь с троллями и спамерами. Убедитесь, что в вашем распоряжении есть инструменты для защиты от таких форм агрессии. Кроме того, имейте в виду, что силы и время тоже нужно рассчитывать. Когда сообщество вырастает до определенного размера, то, как правило, обретает способность самостоятельно поддерживать порядок. Но, если говорить о чатах, поначалу, в течение долгого времени вам придется постоянно быть наготове, чтобы в случае чего вступиться и пресечь.
Не поймите меня неправильно: форумы тоже требуют внимания, однако существующие инструменты и разделение на темы делают их менее уязвимыми. С другой стороны, они оказываются более привлекательной мишенью из-за индексации в Google.
Проблема пятая: обрубленный «хвост»
Она перекликается со второй проблемой, но ситуация предстает немного под другим углом. Когда создаешь инструменты для разработчиков, то поддержка требуется по обширному полю. Вопросы от разработчиков помогают задать границы этого поля. Если они обращаются со своими вопросами в чат, то кто-то должен зафиксировать эти вопросы и вынести их на широкую публику, чтобы они оказывали помощь разработчикам и в будущем. Это можно сделать при помощи формальных документов.
Если же общение происходит на форуме, то без каких-либо дополнительных усилий ответы оказываются доступны длинному «хвосту» разработчиков, приходящих по поисковому запросу. У компании, в которой я работал, 5-6% траффика натекало со страниц форума. Траффик этот был, можно сказать, даровым – ведь чтобы ответить на вопрос, участники потратили бы время независимо от того, где он был задан (на чате или на форуме).
Проблема шестая: поверхностное общение
Если мне кто-то задает вопрос в ходе живой беседы лицом к лицу, я не предполагаю, что человек предварительно собрал много информации на тему и тщательно ее обдумал. В конце концов, это спонтанное общение. Те же ожидания сохраняются и в онлайн-чате в реальном времени.
Когда речь идет о технических проблемах, это создает трудности: с одной стороны, хочется помочь сразу же (см. третью проблему), с другой – не хватает информации для обстоятельного ответа. В асинхронных обсуждениях (как раз-таки в силу их асинхронности) спрашивающий обычно дает больше контекста, чем облегчает задачу желающим ответить.
Почему тогда люди используют Slack, Discord и так далее?
Ничего себе, сколько проблем с этими чатами, и форумы прямо по всем статьям лучше. Так почему же так много людей, собирающих группы разработчиков, выбирают Slack или Discord? Я вижу две причины; одна из них движет компаниями, а другая – разработчиками.
Со стороны компании: проще создать чувство единства у участников. Не знаю, как вы, а я скорее приду с пояснениями, если помощи просит человек, с которым мы уже общались, а не какой-то там тип, который пришел, спросил, ушел.
Slack создает ощущение сообщества в полном смысле слова, места, где все друг друга знают. Когда видишь вопрос в Slack, он воспринимается не так обезличенно, потому что вспоминаешь другие сообщения этого пользователя и какую-то личную информацию, которой он делился. Такой тип общения может сложиться и на форуме, но в Slack, по моим наблюдениям, это случается чаще. Сторонние разговоры делают сообщество более сплоченным, а людей – более отзывчивыми.
Есть и еще один небольшой дополнительный плюс: хостинг для чата можно организовать где-нибудь бесплатно, так что стартап и экономит, и не сталкивается с техническими заминками.
Со стороны разработчика: когда я сталкиваюсь с проблемой, то хочу получить ответ немедленно. Она не дает мне продолжать работу, иначе бы не спрашивал.
Ну да, можно попробовать сменить контекст, но тут свои издержки. Так что синхронный метод разрешения вопросов имеет огромную ценность, с точки зрения человека, который ищет информацию. Если у вас безотлагательное дело, что вы предпочтете – позвонить нужному человеку по телефону или отправить ему письмо по электронной почте? Вот в этом-то и состоит привлекательность онлайн-чатов.
Нужно отметить, что некоторые форумные платформы обзавелись встроенными чатами, однако это само по себе не гарантирует моментальной реакции.
Что же выбрать? А на чем вы хотите сделать акцент? На накоплении знаний в долгосрочной перспективе и культуре полного охвата? Или на чувстве общности и культуре моментального отклика?
Как уже упоминалось, можно использовать оба типа инструментов, в зависимости от текущего этапа эволюции сообщества. Мне кажется, чем дольше вы работаете над проектом, тем активнее будет происходить перемещение на форумы или другие платформы для публичного распространения знаний.
Вот результаты опроса, который я провел на Твиттере в апреле с вопросом: «На какие платформы вы предпочитаете обращаться за помощью?» (как показывают ответы на сообщение, под «другим» в основном подразумевается хорошо выполненная документация):
Комментарии (5)
MartinMiles
12.11.2021 21:56Идельного решениея нет - придется изобретать гибрид. StackOverflow / StackExchange - пока что лучшее для сборв знаний. Но ограничено форматом "вопрос-ответ". Болталки не индексирутся. Ну и все остальное из статьи - тоже верно
Pavel1114
13.11.2021 04:24+3Не понимаю когда чатами пытаются заменить форумы. Иногда например авторы какой нибудь небольшой библиотеки предлагают все вопросы писать в slack. Им там нравится что-ли на одно и то же отвечать? Или они и не собираются этого делать, а типа «мы тут сообщество создали пусть сами друг другу отвечают». Это просто мода похоже какая то. Лучше уж issue tracker
mattroskin
14.11.2021 15:50Толковая статья, хотя сам вопрос, по-моему, немного надуманный. Очевидно, что выбор между моментальным общением (чат) и отложенным (форум) определяется самыми разными факторами - обсуждаемой задачей, числом участников, и тд, и не может быть универсальным на все случаи жизни.
amarkevich
25.11.2021 14:37Последние пару лет нахожу ответы (гуглом) в Github issues.
Удивился, когда по какой-то проблеме с Google Cloud было предложено топать на SO. А впечатлился, когда уже через пару часов был доступен исчерпывающий ответ.
astenix
+1 за форумы (линуксоид внутри топает ножками)!