![]() |
|
![]() ![]() ![]() |
|
Wowa |
|
|||
Эксперт ![]() Профиль Группа: Админ Сообщений: 15017 Регистрация: 14.9.2000 Где: Винград Репутация: 79 Всего: 290 |
||||
|
||||
Alexeis |
|
|||
![]() Амеба ![]() Профиль Группа: Админ Сообщений: 11743 Регистрация: 12.10.2005 Где: Зеленоград Репутация: 13 Всего: 459 |
Да уж с этими звездами все сложнее. По идее там нужно чтобы было что-то вроде накопительной системы, т.е. звезды эта дробная часть от плюсов. Пока сумма этих дробей не превысит 1, "+" не начисляется. За много звезд, может набраться много плюсов. Однако если за этот пост был поставлен "+", то от этого участника звезда уже не дает дробной части к плюсу. Аналогично с минусами.
-------------------- Vit вечная память. Обсуждение действий администрации форума производятся только в этом форуме гениальность идеи состоит в том, что ее невозможно придумать |
|||
|
||||
Wowa |
|
|||
Эксперт ![]() Профиль Группа: Админ Сообщений: 15017 Регистрация: 14.9.2000 Где: Винград Репутация: 79 Всего: 290 |
я думаю, что звезды должны функционировать отдельно от плюсов и просто раз в пару недель обходить посты. считать звезды. У кого-то звезд на сообщении больше N - добавить +1 к рейтингу. Аналогично с минусами. Дабы не было проблем при пересчете рейтинга, эти данные можно хранить в отдельном поле от основного рейтинга и прибавлять к нему при отображении.
|
|||
|
||||
Maksym |
|
|||
![]() . ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1456 Регистрация: 19.8.2005 Где: Odessa, Black Sea Репутация: 1 Всего: 62 |
Обычно даже самые сильные посты набирают 3-5 звезд максимум. В то же время есть участники, которые стабильно пишут разумные и полезные посты, набирающие по 2 звезды (просто потому, что в теме в этот момент два-три заинтересованных участника). Поэтому, имхо, правильнее считать все звезды в постах участника и прибавлять к рейтингу + ближайшее целое(число_звезд_на_постах/коэффициент), где коэффициент==10 (к примеру, это надо эмпирически посчитать). Если технически не сильно усложнит, то этот рейтинг тоже (как и обычный) нужно дифференцировать между репутацией в текущем разделе и общей (в зависимости от того, где найдены рейтинговые посты). |
|||
|
||||
CyClon |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 838 Регистрация: 3.12.2005 Репутация: нет Всего: 4 |
Вообще, при раздаче репутации нужно учитывать только рейтинг того, кто дает плюс. Так будет правильнее. А рейтинг нужно расчитывать исходя из:
* Даты регистрации на форуме * Количества сообщений * Званий (администратор, модератор, участник клуба и тому подобное, то есть в базе нужно для каждого звания создать поле, в которое будет вписываться значение модификатора. То есть, например 1.1 будет значит, что ко всей репутации прибавляется еще 10%). * Количества глобальной репутации * Количества репутации в данном разделе (Разделом считать PHP/JS/C++, а не PHP: Тексты/PHP: Сеть и т.д. То есть, если человек мега-тру-кодер PHP, но нуб в JS, то то соответственно будет задавать нубские вопросы в разделе JS, будет получать ответы. И когда он будет нажимать "+", наваливать тонны репутации за помощь в написании кода alert('Hello') будет неправильно. Думаю меня поняли.) * Уровня предупреждений (0% предупреждений, 100% репы / 50% предупреждений, 50% репы. То есть это будет как бы штрафом на репу. Если юзер например на форуме 3 года, имеет 2000 сообщений, но последнее время начал буянить и получать предупреждения, то для него вводится штраф на репу. Чем больше предупреждений, тем меньше репы он дает за раз. Как косинус - угол растет, значение уменьшается, то есть обратная пропорциональность тут.) Т.е. репу можно высчитывать примерно так:
Делал на скорую руку, так что извиняйте ![]() ЗЫ: Цифры можно переделать так, чтобы самый активный юзер на данный момент давал примерно 10 за раз репутации, остальные по убыванию и будет все ок ![]() |
|||
|
||||
CyClon |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 838 Регистрация: 3.12.2005 Репутация: нет Всего: 4 |
Вот, неплохой вариант получается ![]() ![]() ЗЫ: Минус такой системы - текущая репа обесценится. Хотя, если вводить новую систему, где за один раз дается более 1 репы - все равно обесценнится ![]() |
|||
|
||||
Alexeis |
|
|||
![]() Амеба ![]() Профиль Группа: Админ Сообщений: 11743 Регистрация: 12.10.2005 Где: Зеленоград Репутация: 13 Всего: 459 |
Целочисленные значения безусловно лучше, они нам ближе. 0,27 репы смотриться как-то неконкретно, но тогда без обесценивания с целыми числами никак и не выйдет. Потому новички это минимум +1 бал, опытные +2, оч. опытные/эксперты +3, + бонусные, максимум до +5. Другое дело, что по предложению sTa1kEr, можно сделать, так что внутри группы и более опытному это всегда +1, а менее опытному на 1 больше, т.е. типа таблицы
Для участников без особого статуса так, по вертикали ставящий по горизонтали получающий Новичек Опытный оч. Опытный Новичек 1 1 1 Опытный 2 1 1 оч. Опытный 3 2 1 Для статуса можно сделать перенос с более высокую группу в своем разделе. -------------------- Vit вечная память. Обсуждение действий администрации форума производятся только в этом форуме гениальность идеи состоит в том, что ее невозможно придумать |
|||
|
||||
CyClon |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 838 Регистрация: 3.12.2005 Репутация: нет Всего: 4 |
Оч. опытные новичкам репу не поднимают, как правило
![]() ![]() ![]() |
|||
|
||||
SelenIT |
|
|||
![]() баг форума ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3996 Регистрация: 17.10.2006 Где: Pale Blue Dot Репутация: нет Всего: 401 |
Новичок новичку рознь... ![]() Но мне кажется, что фора в виде более легкой репы для новичков - это лишнее. Новичок, который активно помогает более опытным, и так наберет свои высокие очки достаточно быстро (равно как и новичок, который очень активно помогает другим новичкам, что тоже похвально;). Имхо, вполне достаточно учета "веса" проставляющего. Ну и можно сделать простую "усушку" репы со временем (например, по убывающей экспоненте с "периодом полураспада" в один год), чтобы свежие награды были актуальнее, чем "прошлые заслуги", и нельзя было просто "успокоиться на достигнутом"... ![]() -------------------- Осторожно! Данный юзер и его посты содержат ДГМО! Противопоказано лицам с предрасположенностью к зонеризму! |
|||
|
||||
Stampede |
|
|||
![]() Гносеолог ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 963 Регистрация: 25.4.2005 Где: Calgary, Alberta, Canada Репутация: нет Всего: 144 |
Wowa, а ты уверен, что от такого алгоритма будет польза? Ты можешь объяснить, какого эффекта ты собираешься добиться?
Я просто хочу всех предупредить: алгоритм взвешенного начисления в любом случае получится очень непростой (и при этом как минимум двухпроходный). Как следствие, потеряется простая и наглядная связь между значением репы и количеством проставлений. Усложнится модель данных. Потребуется целый новый репорт: кто, в какой момент, с какими текущими значениями параметров, определяющих величину повышения, проставил в репу. Но это все ладно, при желании можно сделать. Вопрос - чего ради? Неужели кто-то всерьез думает, что от этого у новичков репа будет расти быстрее? Наоборот, получим еще большее расслоение. Присмотритесь: "высокорепые" гораздо чаще награждают друг дружку, нежел каких-то новеньких. И это не кумовство, а вполне естественное положение вещей: очевидно, люди с репой обладают какими-то качествами (знаниями, умениями), которые встречаются не слишком часто. Если совсем на пальцах: если сейчас функция значения репы от числа плюсов растет линейно, то с введенем весовых коэффициентов, в среднем на круг, мы получим что-то близкое к квадратичной функции, а то и к экспоненте, с тенденцией к зашкаливанию в совсем уж заоблачные высоты. Нету ограничивающего фактора потому что. А если мы его введем искусственно, то сразу возникнет вопрос: и стоило городить огород? "Нешто царь-батющка запрещал пирожки продавать?" (с) анекдот Короче, минусов у такого нововведения вижу немеряно, плюсов - практически ни одного. Между тем, если задача стоит каким-то образом выделить интересных участников, я давно уже предлагал реализовать очень простую вещь: подписку на авторов. Мало того, что это была бы чрезвычайно удобная фича для пользователей: зашел во френдоленту, и все интересующие тебя посты как на ладони, так из нее еще и запросто выводится индекс популярности. Безо всяких мудреных алгоритмов. Впрочем, как говорится, хозяин - барин. Спасибо за внимание. -------------------- "If you want something done right, do it yourself" По секрету: выучить английский - реально! |
|||
|
||||
tol05 |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1632 Регистрация: 21.12.2006 Где: Харьков Репутация: нет Всего: 170 |
Полностью согласен с Stampede и частично - с CyClon
Думаю, нужно все обдумать хорошенько, чтобы не переделывать потом и не объяснять участникам, почему набранная ими репутация больше ничего не значит. По поводу разрешения новичкам оценивать ответы. Есть такой момент: я логинюсь под новым аккаунтом (например "SuperPuperMistery") и просто ставлю самому себе (tol05) плюсы. Каждый день. Так сказать, "сделай себе настроение на день прямо с утра". А новички на форум приходят, и восторгаются: смотри, какой чел мне ответил!!! У него репутация - потолок!!! По поводу динамических весов оценок (от кол-ва постов). Есть 3 участника. У каждого - 1000 постов. участник А имеет репутацию 150 участник В имеет репутацию 0 участник С имеет репутацию -8 Каждый из них поставил мне плюс. Эти плюсы равноценны (психологически, морально, как хотите)? А минусы? Я против. Заслуги - это заслуги. И участник А получил +1 от участника B три года назад, то какое право имеет кто-нибудь (человек, алгоритм или электромагнитное излучение, в конце концов) этот плюс забрать? Только B имеет на это право (я говорю не о технической стороне вопроса, а о моральной). Тем более, что скоро (как я понимаю) участник с пятью постами, залогинившийся пару дней всего как, сможет поставить другому такому же участнику (к примеру, своему школьному однокласнику) +10 за пост типа "ржунимагу!!!" ... Тут rsdn вспоминали. Так я очень недоволен их системой оценок. Когда на вопрос новичка, начинаюшийся как "Скажите пожалуйста, а молжно ли сделать...."(вопрос на страницу, с несколькими блоками кода) идут ответы "можно" (и за это отвечающий получает +27) или "ну так в чем проблема?" (... то же самое...). Этим новичком был я когда-то... Отдельная тема - это возможность ставить оценки анонимным пользователям! Когда участник просто выходит из аккаунта, ставит минусы (иногда - с нескольких машин) и входит на свой аккаунт снова... Мне про это говорили лично. Вывод: каждый форум имеет свои правила, свою систему оценок, свои традиции, микроклимат, ауру, если хотите. И не стоит от "своего" так просто отказываться. Нужно традиции поддерживать и развивать, а не просто перенимать правила, интерфейс, и прочее...
Это сообщение отредактировал(а) tol05 - 10.10.2007, 10:27 -------------------- На хорошей работе и сны хорошие снятся. |
|||
|
||||
Alexeis |
|
|||
![]() Амеба ![]() Профиль Группа: Админ Сообщений: 11743 Регистрация: 12.10.2005 Где: Зеленоград Репутация: 13 Всего: 459 |
Тогда единственный вариант делать ее дробной... Т.е. так чтобы средняя оценка приближалась к 1 и варьировалась в зависимости от предположительной способности участника правильно оценить полезность поста. За такие штуки почти всегда следует наказание, либо предупреждение со снятием всех липовых плюсов, либо вообще запрет на установку плюсов/минусов. Этот вопрос не имеет отношения к вопросу, им занимаются (ко)модераторы/Админы. -------------------- Vit вечная память. Обсуждение действий администрации форума производятся только в этом форуме гениальность идеи состоит в том, что ее невозможно придумать |
|||
|
||||
sTa1kEr |
|
||||
9/10 программиста ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1553 Регистрация: 21.2.2007 Репутация: 8 Всего: 146 |
Если говорить про предложенный мной алгоритм, то:
Как-раз и получится, что у "высокорепыех" изменение репутации всегда будет стремится к номинальному значению. А для новичка такое изменение будет намного ценнее. Опять же где вы увидили квадратичную функцию? Скорее обратная гиперболическая функция. Сначала изменение репы будет достаточно большим, а затем резко уменьшатся, предотвращая зашкаливание. По алгоритму CyClon: Имхо слишком большая зависимость от сообщений, дней на форуме и пр. Если делать линейную зависимость "веса", то уж лучше воспользоваться простой схемой Alexeis, только меньшими значениями.
Я предлагаю сделать некий полигон, основанный на текущих реальных данных пользователей, на котором можно будет, так сказать, поиграться с алгоритмом и оценить его реальную пользу, не меняя при этом реальную репутацию и текущую систему репутаций. |
||||
|
|||||
CyClon |
|
||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 838 Регистрация: 3.12.2005 Репутация: нет Всего: 4 |
Я вообще против минусов. Чтобы можно ставить только плюс.
Увеличиваем делитель в 10/100 раз и зависимость уменьшается. Это уже админам решать, какие параметры должны быть наиболее значимыми, наверное. |
||||
|
|||||
Maksym |
|
|||
![]() . ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1456 Регистрация: 19.8.2005 Где: Odessa, Black Sea Репутация: 1 Всего: 62 |
Текущая система рейтингов -- вполне хороша и достаточно адекватна.
Единственное нововведение, которое напрашивается это автоматическое добавление к очкам рейтинга, проставленных участниками, очков рейтинга, вычисленных на основании кол-ва рейтинговых постов (да, я снова про те самые звезды над постами..). Такой рейтинг просто станет точнее, будет награждать за качественные посты, которые, возможно, не заслуживают отдельного "+", но понравились участникам, были разумны и полезны. Или наоборот, пустые посты, за которые "-" ставить черезчур -- все же будут адекватно влиять на репу. |
|||
|
||||
![]() ![]() ![]() |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Обсуждение форума | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |