Как сделать рейтинг или систему оценок?
В уездном городе N было так много парикмахерских заведений и бюро похоронных процессий,
что казалось, жители города рождаются лишь затем, чтобы побриться,
остричься, освежить голову вежеталем и сразу же умереть.
Дано : нужно оставить свой негативный или позитивный отзыв о чём-либо. Допустим, о .
Стандартные решения : дать людям пять звёздочек или две кнопки с плюсом-минусом и рейтингом между ними.
О ба решения - ерунда.
Н ам известно, что обилие вариантов уменьшает вероятность выбора одного из них (). Это значит, что сделав 10 звёздочек вместо 5 вы значительно уменьшите количество голосов, а сделав 20 звёздочек... (поэтому хорошие дизайнеры борятся за каждый пункт в главном меню).
Н о ведь результат будет более точен, можете сказать вы. И будете правы. Правда, пользоваться рейтингом будут 10 человек вместо 1000, мало у кого 10 (20) градаций классности чего-либо. Значит выборка будет не репрезентативна и её можно выбросить.
П отому две кнопки выигрывают у звёздочек, они проще.
Что же не так с двумя кнопками?
М ы не видим соотношения недовольных людей к довольным. Допустим, у рейтинг 100 попугаев. Она настолько плоха, что из 300 проголосовавших 100 были ей недовольны (33%, на секунду)? Или же она настолько прекрасна, что 100 пользователей посчитали её отличной и всем понравилось? Непонятно, будем показывать пропорцию.
Н о и тут не слава богу - ведь если за программу положительно проголовало 10 человек и 1 отрицательно (11 голосов), то в гипотетическом рейтинге классности она будет выше, чем программа, у которой соотношение 1000:101, а это абсурд - популярность второй программы должна уделать первую. К тому же здесь притаилась неплохая возможность накрутить рейтинг (правда, владельцы приложений для ?).
М ожно поступить просто:
Н о лучше пораскинуть мозгами: как избежать накрутки? Введём нижний порог участия в рейтинге. Значит, программа с 11 голосами не сможет быть выше программы с 1101 голосом. Старожилы будут счастливы, а новички будут медленно двигаться в сторону кладбища, никакой мотивации.
Д авайте учитывать конверсию. Сколько людей из скачавших не поленилось оставить свой отзыв?
С качали 1000, оставили 110? Молодцы!
С качали 100, оставили 1? Неплохо, но первая лучше.
У верен, вместе с небольшим (!) минимальным порогом голосов такое решение будет работать лучше, чем синтетический рейтинг или сортировка по соотношению голосов. Даже если кто-то накрутит рейтинг вначале - с каждым новым скачиванием плохая программа будет падать всё ниже и ниже, освобождая дорогу хорошим. А ведь нам это и нужно.
Д авайте обсудим.
Комментарии:
- Антон
Думаю можно перенять кое что у того же booking.com
Голосование только тех кто купил и с указанием + и - программы.
И думаю надо как то учитывать дату релиза.
Возможно рейтинг должен быть для версии.
Интересен математический апарата, который позволит корректно разрешить проблему старого/нового приложения. - Ярослав Бирзул
Про дату и ограничение на скачавших согласен, а вот про указание плюсов и минусов программы нет. Люди пишут это в описании к оценке, а вот дополнительные параметры ведут к новым звёздочкам, что плохо. - Антон
Ну … если взять пример букинга, то это не только не мешает, но часто и работает лучше чем звёздочки само по себе. Фраза «отсутствуют розетки в дорме» в - и «ночью на кухню выносят шоколадные кексики и имбирный лимонад» в + может помочь сделать выбор намного лучше числа в рейтинги. - Ярослав Бирзул
Согласен, но ничего не мешает описать это в комментарии к оценке, зачем плодить? - Антон
гм, это вместо оного и есть.
ключевое - явное разделение + и - .
кроме того сразу понятно что там писать в отличии от несколько абстрактных комментариев. - mogilka
Всегда испытываю негодование при виде звёздочек, и если иначе свою оценку не оставить, пытаюсь выбрать приемлемое, заранее взвесив за и против. И я уверена, полученная оценка всегда будет отражать примерное отношение. Так что, думаю, эти звёздочки вводят в заблуждение и юзера и аналитика.
+ и - мне тоже не нравится, хотя иногда в этом есть смысл. Но на активном ресурсе есть большая вероятность, что минусами будут злоупотреблять, уже не раз такое подтверждалось.
Идеальным вариантом для высказывания своего мнения считаю лайки, принятые (или плюсы, не суть важно). Человек, который хочет поддержать, всегда нажмёт плюс - Ярослав Бирзул
Лайки имеют одну неприятность - они выражают лишь количество людей, которым понравилось что-либо и не отображают отношения сообщества, не позволяют устроить модерацию с помощью других участников.
Вторая большая проблема такой однобокости (поняли ещё на InspireMe) - не получится правильно ранжировать материалы, которые появились в разное время. Старый всегда будет иметь фору, что не очень хорошо.
Формат, в котором есть оба мнения, но учитывается ещё и эффективность (относительно скачиваний, просмотров и т.п.) будет лишён этих недостатков.
Думаю, в будущих проектах мы будем работать именно в таком ключе. - talgautb
согласен, тема интересная тоже задумывался над этим.
насчёт вывода в топ, думаю так:
количество +/- за время публикации
тут наверн как на кинопоиске необходима сложная математическая формула:)
ещё важно не показывать результат голоса (если например статья), часто бывает, что пользователь кликает от общего отношения пользователей.
думаю, тут от проекта зависит.
но в общем-то мне больше нравится + или -
если понравилось +, нет - , если пофиг ничего:)
а звёздочки для оценки гостиниц, ресторанов самое то
имхо - multik
Ярослав, подумал над вашей задачей 10 минут, поэтому строго не судите, но можете рассмотреть как идею:
Обозначаем переменные
amount - общее кол-во людей, которое ознакомилось . Тут стоит обратить особое внимание, что это не просто кол-во людей, которое зашло на страницу. Это именно люди, ознакомившиеся с контентом. Как их посчитать? Если у нас видео выступает в качестве контента, то пускай хотя бы 25% от общей продолжительности видеоролика просмотрит и тогда мы юзера добавляем к переменной amount. Если у нас набор , то пускай пользователь хотя бы 10 секунд их рассматривал, пользовался скроллом (через скроллбар или мышкой/тачскрином), вообщем, мониторим прочее поведение, свойственное для реального человека. Задача зафиксировать реального(!) пользователя, который действительно ознакомился(!) с контентом, только тогда мы его добавляем к amount и запоминаем его id, чтобы в будущем исключить его повторного добавления к переменной amount для конкретной статьи, если там он уже есть.
Итого получаем формулу:
delta = amount + (плюсы - минусы);
можно усилить влияние плюсов и минусов, умножив скобки на 2:
delta = amount + (плюсы - минусы) * 2;
Пример (базовая формула):
контент изучили 1000 человек, поставили 10 плюсов и 90 минусов.
delta = 1000 + (10 - 90) = 1000 + -80 = 920;
контент изучили 100 человек, поставили 80 плюсов и 2 минуса
delta = 100 + (80 - 2) = 100 + 78 = 178;
В чём особенность:
статья с amount=1000, с 10 плюсами и 20 минусами будет ниже по рейтингу статьи, с amount=600, у которой 401 плюсов и 10 минусов, т.к. в первом случае delta=990, а во втором 991.
если же использовать для вышеприведённого примера формулы с усилением на плюсы/минусы, то получим, что чтобы обойти статью с amount=1000, 10 плюсами и 20 минусами, достаточно статьи с amount=401, с 292 плюсами и 2 минусами. В первом случае delta=980, во втором 981. Если говорить простыми словами, то статья, с которой ознакомилось только 401 человек и поставила кучу плюсов, обгонит статью с 1000 ознакомившихся.
Усиление плюсов и минусов можно увеличить, поставив в формулу вместо двойки, скажем 5 или даже 10.
В чём минус схемы: идея придумана 30 минут назад, в жизни не пробовалась, возможно что-то где-то упустил из виду.
Ну и не забываем писать кучу скриптов защиты от накрутов. В формуле уже заложена основа, но этого мало. Нужно также позаботиться о защите от накрутки ботами и прочим шаманством.
— плагин для организации рейтинговой системы на сайте. Можно сказать, что блог не «живет» без активного пользовательского комментирования. Так почему бы не премировать авторов статей и комментаторов очками, ведь люди любят получать поощрения за активность, пусть даже – это только цифры рейтинга. (Вспомните хотя бы негодование пользователей, связанное с отменой рейтинга на сайте RuTracker.org, хотя все и понимали, что рейтинг уже давно ни на что не влиял.
Разработчики так же предполагают, что с помощью этого плагина владелец сайта может подзаработать, предоставит пользователям возможность покупать баллы через PayPal . Зачем пользователю покупать баллы. К примеру, доступ к определенному контенту может быть открыт, только при достижении определенного рейтинга.
Установка CubePoints
Все как . Заходим в админ-панель WordPress , переходим во вкладку Плагины (Plugins) — «Добавить новый» и с помощью поиска находим плагин . Добавляем его и активируем.
Последняя версия плагина полностью переведена на русский язык, и притом, переведена очень качественно, так что работать с ней очень просто и приятно. Переходим в меню CubePoints и начинаем настраивать плагин.
Для справки – прекрасно взаимодействует с Buddypress (популярный плагин для создания социальной сети на базе WP). Если у вас есть своя социальная сеть, построенная с помощью Buddypress , то вы можете легко интегрировать в нее систему рейтинга . Для этого вам понадобится еще один плагин, который так и называется — CubePoints Buddypress Integration .
Основные возможности плагина
- Начисление очков рейтинга за комментарии и публикацию записей;
- Возможность передачи очков от одного пользователя к другому;
- Система рангов, сходная с системой, существующей на торрент-трекерах;
- Начисление очков за ежедневную авторизацию на сайте (производится в автоматическом режиме);
- Списание очков за спам и последующее удаление комментариев;
- Списание очков за удаление записей;
- Списание очков за просмотр платного контента;
- Возможность покупать баллы с помощью платежной системы PayPal ;
- Возможность ручного начисления баллов пользователям.
Описание CubePoints при всех подключенных модулях за исключением «Сбросить данные»
Управление
Управление начисленными пользователям баллами. Можно, как начислить, так и отнять у пользователя любое количество очков рейтинга.
Добавить баллы
Начисление баллов пользователям вручную.
Настроить
Основная страница настройки плагина. В основном здесь можно задать количество баллов, которые прибавляются или отнимаются за какое-либо действие.
Журналы
Сведения о последних манипуляциях с баллами.
Резервное копирование & Восстановление
Думаю, эта вкладка не нуждается в дополнительных комментариях.
Мои баллы
Личная страничка пользователя, на которой он может посмотреть, сколько баллов он заработал или потерял, совершив то или иное действие.
Пополнить счет через PayPal
Настройка параметров оплаты баллов через PayPal .
Итак, как можно эту форму отобразить:
1. С помощью следующего HTML код: