Discourse постепенно решает усталость, о которой я не осознавал

…смерть от тысячи (иногда буквально) корпоративных приложений. Сегодня я чувствую усталость (и, похоже, многие другие тоже) от того, что для всего в корпоративной среде требуется 1000 разных приложений. Непоследовательность в UX/UI, управление доступом, протоколы связи… список можно продолжать бесконечно. Это касается не только нашего внутреннего бизнеса, пользователи тоже это ощущают.

Это наше приложение для заметок, это приложение для файлов, это приложение для сообщений, это наше приложение a/b/c/1/2/3/x/y/z. Это изматывает.

Затем вам приходится подключать ещё больше корпоративных приложений, чтобы связать их на уровне приложений, и ещё одно приложение, чтобы объединить их все. Это как Netflix, воссоздающий кабельный пакет, но для корпоративных приложений.

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

Хотя Discourse, возможно, не считается лучшим в своём классе другими в отношении всех остальных функций (например, система тикетов, блог, маркетплейс и т. д.), для меня она является лучшей в своём классе, потому что может выполнять 99% того, что делают эти другие приложения, сохраняя при этом гармонию пользовательского опыта и базовой архитектуры. Для меня это стоит экспоненциально больше, поскольку я знаю, что мой блог, объявления, управление пользователями, форум для обсуждений, мероприятия и так далее будут работать слаженно.

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

Всё можно создать с помощью этой платформы. Это не просто темы, это:

  • Блоги
  • Объявления
  • Товары маркетплейса
  • Обсуждения
  • Тикеты поддержки
  • Видео
  • Мероприятия
  • Доски спринтов
  • Ошибки/проблемы
  • Идеи
  • Заявки на участие в конференциях (CFP)
  • Руководства
  • список можно продолжать…

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


Хотя я никогда не буду избегать упоминания того, что у Discourse есть свои особенности (я ненавижу плагин docs, но, возможно, я ещё не видел всей картины), ценность, которую он предоставляет при гибком создании такой целостной экосистемы, намного перевешивает любые недостатки.

:spiral_notepad: Мы используем Discourse для нашей B2B корпоративной сообщества. Эти мысли возникли из-за быстрого притока других команд в нашем бизнесе, которые спрашивали, можем ли мы помочь им создать ориентированные на клиентов интерфейсы на основе нашего сообщества, после того как увидели, на что оно способно на недавнем корпоративном мероприятии. Мы масштабируем наши операции и быстро расширяем сценарии использования (что для нас хорошая проблема).

23 лайка

Я с вами полностью согласен. Однако Discourse часто является компромиссом. Я могу получить гораздо лучшую платформу для ведения блогов с помощью WordPress, но она не может предоставить функциональный форум.

У меня есть несколько вариантов для продажи товаров, и Discourse в этот список не входит.

Размещать подкасты с помощью Discourse? Забудьте об этом.

Все мои варианты в этих трёх примерах — такие, которые не утекают и не потребляют чрезмерно много данных.

Нам нужно разделить вещи:

  • что нужно пользователю
  • что нужно администратору/владельцу

И с моей точки зрения у нас есть два вопроса:

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

Я сказал, что люди — безмозглый скот? Почти что да. Или, если выразиться более вежливо: большинство людей не разбираются в этом и ищут более простые решения. Кроме того, всё изменилось, когда Джобс (это могло быть Nokia, Blueberry и т. д.) представил первый настоящий смартфон, работающий на уровне приложений.

Сегодня я немного пессимистичен. Я полностью довольный пользователь Discourse — как конечный пользователь, так и администратор. Это блестящее программное обеспечение для форумов. Но мы просто не можем победить мир отдельных приложений и многомиллиардные корпорации, когда каждый пользователь — будь то создающий, потребляющий или собирающий выгоду — хочет чего-то другого.

4 лайка

Абсолютно согласен — отличный ответ! Я попытался отразить это в настроении вышеприведённого сообщения. Разве Discourse лучше Jira для отслеживания задач и проектов? Конечно, нет, если считать в долларах. Разве он лучше Google Drive, OneDrive и подобных сервисов для хостинга файлов? Определённо нет.

(Разве он лучший для онлайн-сообществ? Ну, конечно же, да, безусловно!)

Но ценность Discourse в других областях, благодаря его универсальности, заключается в том, что он может выполнять 99% того, что делают эти инструменты, хотя и с некоторыми особенностями, о которых вы, как мне кажется, намекаете. Я готов использовать одну платформу для большинства задач, которая выполняет 99% функций с парой нюансов, чем ад корпоративных приложений, который я наблюдаю сегодня.

НО, как и во всём в жизни… всё зависит от обстоятельств!

Вы правы: невозможно решить все случаи использования, реализовать все функции или угодить всем. Работая в организации, которая сама разрабатывает корпоративные приложения, я знаю, что найти этот баланс — это бесконечный путь!

Мне жаль это слышать. Надеюсь, ваш день улучшится :hugs:

5 лайков

Это была одна из наших ключевых проблем. У нас огромное количество платформ, выполняющих одни и те же функции, и Discourse отлично справляется с объединением всего этого, если всё настроено правильно.

В частности, нам не хватало единой точки поиска. Чтобы решить эту задачу с (очень) минимальными затратами, мы спонсировали команду Discourse в доработке поиска в заголовке, чтобы он позволял искать в других платформах прямо из строки поиска Discourse. Теперь мы можем искать в Confluence и других системах прямо из Discourse :slight_smile:

Примечание: Это не осуществляет нативный поиск внутри Discourse, а перенаправляет пользователя на другую платформу, передав поисковый запрос как параметр запроса, так что пользователь сразу попадает к результатам на той платформе.

Это означает отсутствие постоянных расходов и необходимости создавать собственный поисковый движок — достаточно просто установить и настроить компонент темы :slight_smile:

Ниже приведён пример настройки поиска по Meta из строки поиска вашего экземпляра:

  1. Добавьте fab-discourse в набор иконок SVG
    image
  2. В компоненте темы «Поиск в заголовке» откройте редактор дополнительные иконки поиска:
    image
  3. Добавьте запись для Meta

    Примечание: excludeFrom — это список ID категорий, в которых вы не хотите, чтобы эта иконка отображалась. В данном случае мы исключаем её из категории с ID 1.
  4. Сохраните изменения.

После обновления страницы в браузере вы увидите символ Meta в строке поиска при вводе поискового запроса. Если нажать на иконку, откроются результаты поиска по этому запросу в Meta :slight_smile:

В видео ниже я ищу «fatigue» (усталость) в строке поиска моего личного экземпляра, затем нажимаю на иконку Meta, чтобы увидеть результаты поиска по этому запросу в Meta:

7 лайков

@Tris20 это просто пушка! Я, пожалуй, лишь в общих чертах затрагивал описанные выше сценарии использования. Есть всего два случая, которые я ещё не описывал и не обсуждал, и которые не встречал больше нигде, но они находятся на том же уровне:

Интеграция со страницей статуса

Мы синхронизируем события со страницы статуса один к одному: с нашей страницы статуса в категорию Discourse, где каждый статус — это отдельная тема. События статуса дублируются в первом сообщении, причём постятся в хронологическом порядке (по возрастанию). Мы делаем мелочи, которые нравятся нашим пользователям (как внутренним, так и внешним): например, используем объект datetime из Discourse, чтобы время всегда отображалось в их локальном часовом поясе; отображаем актуальный статус через тег в теме; а также реализовали несколько других крутых идей. Честно говоря, я бы хотел, чтобы такая функция была и в Meta.

Мне действительно стоит написать подробнее о полной интеграции, потому что она потрясающая. Мы завершаем её, подключив к интеграции с чатом и Slack (нашему корпоративному чату): когда происходят события статуса платформы, соответствующие темы Discourse публикуются во внутреннем канале статуса, за которым следит вся команда. Однако в итоге разговор всё равно возвращает их к нашему единственному источнику истины — Discourse!

Синхронизация с Airtable

Мы активно используем Airtable для управления программами сообщества, управления проектами и автоматизации. Мы создали невероятную одностороннюю синхронизацию между таблицами пользователей и групп пользователей в Discourse и Airtable, так что в Airtable у нас есть точная копия 1:1 с обновлениями в реальном времени.

В Airtable мы можем создавать расширенные автоматизации для этих событий (изменения жизненного цикла пользователя, смена локации, обновление профиля и т. д.). Airtable также позволяет синхронизировать эти таблицы с другими базами Airtable, и именно здесь происходит настоящая магия. У нас есть база Airtable для управления программой мероприятий, где мы используем не только таблицу пользователей на уровне базы, но и расширяем её дополнительными значениями, специфичными для управления этой программой.

Ценность и масштаб, которые мы получаем от этой интеграции, я бы сказал, стали беспрецедентной причиной того, как мне удалось так сильно масштабировать свою работу с сообществом ещё до того, как я нанял своего первого сотрудника на полную ставку в сфере сообщества спустя 3,5 года (@putty :wave:).


Это довольно продвинутые сценарии использования. Думаю, если бы их увидели другие в корпоративном секторе, их реакция была бы примерно такой:

4 лайка

Похоже, нам нужно вывести вас на (виртуальную) сцену где-нибудь :smiley:

Мне бы очень хотелось увидеть, что вы создали; мне нравится ваша прагматичная установка использовать Airtable, Zapier или что-то подобное для быстрой сборки решений :slight_smile:
Не всё должно быть на 100% покрыто модульными тестами и полностью специфицировано. Часто быстрое решение, которое может легко доработать сам владелец продукта, оказывается гораздо полезнее!

3 лайка

Не поймите меня неправильно, мне бы очень хотелось увидеть функции в Discourse, верно? Разве всем нам не хотелось бы видеть приоритизацию наших функций :sweat_smile:

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

3 лайка

О, конечно!
Но, как мы все знаем, даже если мы все используем только 20% программного обеспечения, никто не использует одни и те же 20% :smiley:

Использование Airtable для исправления вещей решает так много проблем! То, что можно создать в Airtable за 2 часа, вероятно, потребовало бы дней обсуждений, прежде чем это даже дошло бы до этапа разработки :man_shrugging:

2 лайка

110%! API-первый подход — это благословение для разработчиков!

2 лайка

Можете ли вы помочь мне настроить это для нашего сообщества?

Вы используете Zapier или другие инструменты, или есть прямая интеграция?

2 лайка

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

Всё реализовано через вебхуки и API Discourse, которые отслеживаются и вызываются с помощью автоматизаций в Airtable.

5 лайков

Спасибо. Это полезно. Я попробую разобраться.

1 лайк