Как вы определяете перспективных будущих ведущих участников?
Составить список аккаунтов и частоту их участия, чтобы выявить ведущих участников, довольно просто. Но есть ли способ выявить аккаунты, которые демонстрируют тенденцию к тому, чтобы стать ведущими участниками?
Я хотел бы лучше «поддерживать» таких пользователей — например, с помощью простых действий, таких как выражение признательности за их вклад с помощью реакций или ответа с сообщением «Отличный ответ» и т. д.
Я думаю, что с помощью Data Explorer можно извлечь много информации. Всё зависит от того, какие критерии вы используете для определения ведущих участников, но вы можете использовать такие запросы, как этот, чтобы увидеть, кто близок к получению статуса TL3, например: Find the users which are more likely to become TL3 - #19 by ganncamp
Кстати, вы можете использовать Claude (я использую 3.5 Sonnet) для создания довольно сложных запросов. Я создал запрос, который присваивает пользователям оценку на основе очень конкретных критериев, которые я ему указал. Потребовалось много итераций, чтобы добиться нужного результата, но в итоге я в восторге от итогов; самая сложная часть — определить, какие критерии использовать.
Я также пробовал OpenAI и Gemini для этой задачи, и безоговорочным победителем оказался Claude.
Наша первая попытка в этом направлении — это лидерборд, но, похоже, он учитывает только чистый объём (представьте: «Уже исправлено? Уже исправлено? Уже исправлено? Алло?») в ущерб качеству. Да, «качество» сложно выразить алгоритмически, хотя есть некоторые очевидные улучшения.
Чтобы выявлять по-настоящему полезных пользователей, мы начали следующее:
искать темы, где первым ответом отвечает другой пользователь
-- Цель: найти темы, где первый ответ не от автора темы (OP) дан не пользователем из группы SonarSourcer
WITH
SonarSourcers AS (
SELECT u.id AS user_id
FROM groups g
INNER JOIN group_users gu ON g.id=gu.group_id
INNER JOIN users u ON u.id = gu.user_id
WHERE g.name='sonarsourcers'
),
tagged_topics AS (
SELECT tt.topic_id
FROM topic_tags tt
JOIN tags t on t.id=tt.tag_id
WHERE name = 'me-too'
),
-- найти «обычные» темы, созданные обычными пользователями
topic_user AS (
SELECT id as topic_id, user_id, created_at
FROM topics
LEFT JOIN SonarSourcers ss USING(user_id)
LEFT JOIN tagged_topics tt on topics.id = tt.topic_id
WHERE ss.user_id IS NULL -- исключить темы, созданные SonarSourcer
AND tt.topic_id IS NULL -- исключить темы с тегом me-too
AND user_id > 0 -- исключить приветственные ЛС/учебные темы DiscoBot
AND visible = TRUE
AND archived = FALSE
AND archetype='regular'
AND created_at::DATE > '2023-07-01'
),
-- найти первый ответ не от автора темы в этих темах
min_response AS (
SELECT p.topic_id, tu.created_at, MIN(post_number) as post_number
FROM posts p
JOIN topic_user tu USING(topic_id)
WHERE p.post_type = 1
AND p.user_id != tu.user_id
AND p.post_number > 1
AND p.hidden = false
AND p.deleted_at IS NULL
GROUP BY topic_id, tu.created_at
)
SELECT p.topic_id, p.user_id, mr.created_at::DATE as thread_date
FROM posts p
JOIN min_response mr ON p.topic_id = mr.topic_id AND p.post_number=mr.post_number
LEFT JOIN SonarSourcers ss ON p.user_id=ss.user_id
LEFT JOIN user_badges ub on p.id = ub.post_id and ub.badge_id=110
WHERE ss.user_id IS NULL -- исключить темы, где первым ответил SonarSourcer
AND ub.user_id IS NULL -- исключить темы, где уже была выдана награда
ORDER BY mr.created_at DESC
После выявления таких тем мы оцениваем ответ пользователя и либо награждаем его значком «Пользователи помогают пользователям», либо помечаем тему тегом «me-too» (невидимым для нештатных сотрудников). (Кстати, этот отчёт по ответам пользователей имеет приятный побочный эффект — помогает быстро обнаруживать инциденты в нашем облачном сервисе. )
Далее становится проще дальше поощрять полезных пользователей и выявлять их для дальнейшего развития сообщества.
Думаю, самая сложная часть — определить, кто такой топ-контрибьютор, и выбрать атрибуты, которые измеряют качественные, а не количественные данные.
Например, кто больше подходит на роль топ-контрибьютора: участник, который ответил 50 раз и 90% его ответов отмечены как решения, или тот, кто ответил 100 раз, но только 10% его ответов помечены как решения?
На данный момент топ-контрибьюторов довольно легко определить — это те, кого мы чаще всего видим в сообществе. Но, полагаю, нам нужны более конкретные критерии, чтобы выявлять тех, кто уже близок к этому статусу или движется в этом направлении.
Да. Таблица лидеров — отличный способ увидеть самых активных пользователей. Например, на большинстве форумов топ-постеры занимают первые 10 мест. Эти места в основном принадлежат «Регулярным» и «Лидерам» благодаря их высокой активности, что позволяет им подниматься вверх и получать повышение.
Кажется, вы попали в самую точку. Это в основном вопрос качества, а не количества.
Я сталкивался с очень полезными участниками, которые писали всего несколько постов в месяц, и с совершенно бесполезными, публиковавшими несколько десятков постов в неделю. Рейтинг — отличное начало для отделения зерна от плевел, но в конечном итоге всё зависит от вашего суждения как менеджера сообщества