Сегодня хотел бы затронуть вопрос реализации новой версии клуба и, в частности, метода расчитывания рейтинга его участников.
В отличие от старой версии, новая версия клуба не является самостоятельной единицей со своей регистрацией и отдельной формой внесения данных. Клуб - квитэссенция всех данных о человеке, которые хранятся в базе данных сайта.
Так как информации довольно много и хранится она по разным базам, не представляется возможным "на лету" формировать данные при каждом запросе пользователей. Это было бы долго и создавало бы большую нагрузку на сервер. Таким образом было принято решение сделать программу, которая будет один раз в сутки собирать все данные из баз данных сайта, их обрабатывать и сохранять в одном месте, из которого в последствии они и берутся в процессе работы с клубом.
Суть клуба сводится к удобству поиска себе подобных по разным факторам: город (что наиболее важно), имя, возраст и пр. В качестве бонуса - на основных страницах сайта в блоке аккаунта пользователя показывается порядковый номер согласно рейтингу (только для первых 99 участников). Вся информация грузится очень быстро и без перезагрузки страниц. Фильтры используются для поиска информации и также работают очень быстро. Таким образом найти знакомого Александра из Москвы больше не составляет большого труда! Кроме того, можно использовать как одиночную, так и множественную сортировку пользователей по столбцам.
Но этого мне показалось мало и захотелось выводить пользователей (по умолчанию) в порядке их "полезности" для сайта. Так возник алгоритм расчета условного рейтинга пользователей. Вначале я считал, что алгоритм рейтинга должен быть закрытым, но теперь я думаю, что стоит его обсудить и внести в него изменения.
У алгоритма есть как положительные факторы, которые добавляют баллы, так и отрицательные - которые баллы снимают. Кроме того, был введён "возрастной" фактор аккаунта. По моей логике, пользователю, который только что зарегистрировался на сайте, будет намного сложнее пробиться наверх списка, чем старожилам, так как у последних уже много чего накоплено за историю. Поэтому чем старее аккаунт тем больше забирается у него очков при расчёте рейтинга. То есть тем самым мы даём новичкам фору.
Чтобы все могли поучаствовать в алгоритме расчета, я создал бланк в ворде, который каждый желающий может заполнить и опубликовать в этой теме. Если у вас есть какие-то дополнительные вопросы или идеи по рейтингу - пишите, будем обсуждать.
Прошу ещё раз заметить: с моей точки зрения при расчете рейтинга важно не только что пользователь сделал на форуме (что само по себе важно, не спорю), но для клуба очень важно количество данных, которые пользователь о себе указал. Чем больше данных, тем интереснее пользователь для других людей. Поэтому за предоставление о себе информации надо "премировать"!
Было бы более наглядно, если бы тот же бланк был в Экселе Или даже придумать свой алгоритм
AntТо есть тем самым мы даём новичкам фору.Но фору в чём? Ведь новичков микроскопическое количество, что преимущество (в чём?) явно в сторону старожилов форума.
PRIESTБыло бы более наглядно, если бы тот же бланк был в ЭкселеНе люблю его, честно говоря.
PRIESTИли даже придумать свой алгоритмЭто всегда пожалуйста. Для этого и тема.
PRIESTНо фору в чём?Во времени.
PRIEST, посмотрел твой бланк.
1. Заслуженный участник - это отдельный статус. Он не может быть в дополнение.
2. Остальное у тебя примерно как в моей версии. Только у меня за награды и новости даётся намного больше.
3. По поводу последних двух пунктов. Ну прочерк в предпоследнем я ещё понимаю твоё позицию. Но у последней то - почему прочерк? Кто-то что-то делал, а потом забил на форум и сайт. И теперь догоняй его. Может все таки дорогу молодым и активным?
AntКто-то что-то делал, а потом забил на форум и сайт. И теперь догоняй его. Может все таки дорогу молодым и активным?Прочерк ещё не значит, шо я против
Эм, а что он значит тогда?
AntНо у последней то - почему прочерк? Кто-то что-то делал, а потом забил на форум и сайт. И теперь догоняй его. Может все таки дорогу молодым и активным?еще бы молодые что-то делали...
Arturну,а я удивлен своему рейтингу на самом деле.Рейтинг такой высокий - так как много инфы в профиле.
PRIEST, кстати, а почему так мало баллов за инфу в рейтинге? По сути ты приравнял одно заполненное поле к одному сообщению. Для клуба одно заполненное поле с данными о пользователе значительно важнее одного сообщения на форуме. На мой взгляд.
AntДля клуба одно заполненное поле с данными о пользователе значительно важнее одного сообщения на форуме. На мой взгляд.Кстати, да. И тут же вопрос о достоверности данных: как бороться с информацией в полях, которая явно не соответствует действительности?
Вопрос касательно двух последних пунктов: как быть с теми, кто ушёл в минус (долгое время читал форум, а потом решил пообщаться)? Может быть сделать привязку к началу активности, а не к дате регистрации?
Думаю, людям нет нужды писать неправду.
А писать правду или нет - дело каждого отдельно взятого человека.
А я думаю что нужно что-то между датой регистрации и датой активности сделать.
NIKOTINКстати, да. И тут же вопрос о достоверности данных: как бороться с информацией в полях, которая явно не соответствует действительности?Я тут согласен с Artur-ом. У нас тут всё таки не деньги пилят, а общаются. Так что не вижу какого-то особого смысла обманывать. Ну а если кого-то в единичных случаях заподозрим - всегда можно пессимизировать рейтинг вручную.
NIKOTINМожет быть сделать привязку к началу активности, а не к дате регистрации?Хм. Эта идея действительно кажется разумной. Беру на заметку.
ArturА я думаю что нужно что-то между датой регистрации и датой активности сделать.Не совсем понял, что вы имели ввиду? Если вы про тоже что и NIKOTIN написал, то я подумаю, что можно сделать. Если же имелось ввиду что-то другое - прошу пояснить.
Ну внести некое число X, которое будет известно путем вычета баллов от начала активности из баллов от даты регистрации. То есть - опытный и спамером. пользователь не сможет быть "нисвергнут" новеньким сверхактивным спамером.
Права у всех одинаковые, но рейтинг - дело времени,заслуг и доверия. Вот.
Artur, все равно не понял сути. Точнее понимаю цель вашего предложения - чтобы новый участник не вышел в топ за счет активного "прессинга". Но не понимаю, как это реализовать.
Сейчас у нас наоборот - новые участники имеют фору. Вы предлагаете наоборот - занижать им рейтинг? А зачем? Думаете кто-то только что зарегистрировавшись умудрится написать сразу несколько тысяч сообщений на форуме?
AntВы предлагаете наоборот - занижать им рейтинг? А зачем? Думаете кто-то только что зарегистрировавшись умудрится написать сразу несколько тысяч сообщений на форуме?Нет. Не занижать. Даже и не думал об этом.
Просто надо как-то расчитать. ну да ладно. Теория Никотина мне тоже нравится)
AntPRIEST, кстати, а почему так мало баллов за инфу в рейтинге?А какая польза с неё? Как по мне, так инфа в профиле не должна особо влиять на рейтинг
PRIESTА какая польза с неё?Тебе разве не интересно найти пользователей из своего города?
ArturПусть дата регистрации y, а начало активности x,тогда x-y=z; где z это составляющая рейтинга по временному фактору.Во-первых, z у вас всегда отрицательная. Во-вторых, предположим, что между регистрацией и первым сообщением прошёл месяц (30 дней). По вашей формуле это -2592000 секунд. Что дальше делать с получившимся значением? Лично я так и не понимаю.
ArturПросто надо как-то расчитать.Что рассчитываем-то? Может кто-нибудь расшифровать предложение Artur-а?
AntТебе разве не интересно найти пользователей из своего города?Но тогда как это влияет на рейтинг?
PRIESTНо тогда как это влияет на рейтинг?Что это? Рейтинг - это средство сортировки пользователей в клубе, а не мерило заслуг на форуме. Он нужен, в частности, чтобы промотивировать людей указывать о себе больше информации. Чем больше информации о себе оставляют пользователи, тем больше у нас информации в базе и тем интереснее и полезнее потом с ней работать.
Ant, тем больше у нас информации в базе и тем интереснее и полезнее потом с ней работать.Кровавая ГЭБня не спит? ЗОГ атакует?
AntЧем больше информации о себе оставляют пользователи, тем больше у нас информации в базе и тем интереснее и полезнее потом с ней работать.Ну тогда в любом случае больше
AntРейтинг - это средство сортировки пользователей в клубе, а не мерило заслуг на форуме.А, ну тогда я понял, это что-то типа "процентов" в ВК?
NIKOTINэто что-то типа "процентов" в ВК?
NIKOTINAntРейтинг - это средство сортировки пользователей в клубе, а не мерило заслуг на форуме. А, ну тогда я понял, это что-то типа "процентов" в ВК?Ну тогда на это дело можно забить. Ибо толку с этого...Не знаю.
ArturКровавая ГЭБня не спит? ЗОГ атакует?
NIKOTINА, ну тогда я понял, это что-то типа "процентов" в ВК?Я не пользуюсь соц. сетями.
ArturНу тогда на это дело можно забить. Ибо толку с этого...Не знаю.А с чего был бы толк? По-вашему.
Нужно как-то оживить форум, вводить творческие конкурсы,больше обсуждений - я покапался по архиву - веселые раньше тут времена были. Даже в 2010 году,когда меня не было.
Дело не в обсуждениях, а в кол-ве народа. Надо как-то рекламировать сайт, что бы посещаемость была высокая.
Ну и интерес конечно, что бы человек не регистрировался просто так, мотивация должна быть, я так думаю. Хотя в голову больше идей не приходит, пока что...
HammettДело не в обсуждениях, а в кол-ве народа.Взаимозависимые я считаю моменты.
HammettНадо как-то рекламировать сайт, что бы посещаемость была высокая.
HammettДело не в обсуждениях, а в кол-ве народа. Надо как-то рекламировать сайт, что бы посещаемость была высокая.Ну и интерес конечно, что бы человек не регистрировался просто так, мотивация должна быть, я так думаю. Хотя в голову больше идей не приходит, пока что...Админ,модератор и особо активные пользователи сайта в бой
Hammettмотивация должна быть,какая?
Надо нашей Металлике новый альбом выпустить. Тогда и будет много обсуждений.
AntТогда и будет много обсуждений.Выпустили же
PRIESTВыпустили жеТут и обсуждать нечего, собственно говоря.
AntТут и обсуждать нечего, собственно говоря.Ага, на Metallica все забили... шо же делать-то, а?