Существует мнение, что результаты голосований на сайтах крайне слабо отражают действительность. Получение адекватных результатов усложнено рядом проблем, связанных как с самой технологией проведения опросов, так и с программной реализацией.
Выборка респондентов часто нерепрезентативна. Голосующие могут быть заинтересованы в подтасовке результатов. Закрытые опросы излишне упрощают реальную картину. Авторитетные представители сообщества могут распространять свое влияние на остальных. Кто-то выбирает самый непопулярный вариант, чтобы показать свою обособленность.
Но все-таки опросы живут и здравствуют. Сейчас популярны голосования с двумя опциями для выбора: «+/-», «за/против», «ваау/феее». Это разные социальные сервисы.
Еще вариант — оценка чего-нибудь по пятибалльной шкале. В моде звездочки и Ajax.
Серьезная техническая проблема, связанная с опросами, — накрутка. Пикантность ситуации в том, что люди, занимающиеся накруткой в промышленных масштабах, обладают достаточными средствами для обмана изощренной защиты.
Разработчики устраивают на сайтах регистрацию пользователей, ставят каптчи и придумывают хитрые алгоритмы распределения весов голосов. Злоумышленники в свою очередь плодят виртуалов, пишут OCR-модули и прокачивают профили.
Интересная деталь: 99% пользователей не участвуют в игрищах. Если обычный человек вдруг захочет проголосовать, в идеале всё должно решаться одним кликом. Но в то же время какая-то защита от накрутки необходима.
В следующий раз будет практическая часть об устройстве анонимных голосований на сайтах.
Дмитрий Сергеев, 22 года. Разрабатываю сайты на Drupal.
Денис Болтиков, 20.05.2007 19:26
Странно, похоже первый раз комментарий не прошел.
Делать сложную защиту бесполезно, так как все равно можно найти пути ее обхода.
Мне приходилось организовывать голосования на сайте несколько раз. Для простых пользователей достаточно блокировки по кукиз, для более продвинутых блокировки по IP (динамические адреса на меньшее время, постоянные на большее). Чтобы отсечь большинство хакеров, достаточно запретить голосование для зарубежных IP, в моем случае это были не новосибирские IP. Это защитит от тех кто умеет юзать анонимные прокси. Для абсолютного большинства голосований этого вполне достаточно.
Если хочется еще большего контроля, то максимальное логирование каждого голоса (все IP, версии браузеров, время, куки) и потом ручной анализ лидеров.