Эй, программисты! Есть работенка, связанная с сексом!

Мозговой штурм: помоги журналу MAXIM улучшить алгоритм выборов самой сексуальной женщины страны!

Вот уже десять или одиннадцать лет мы составляем единственный в стране рейтинг. Называется он «100 самых сексуальных женщин страны». Да, название громоздко, неизящно, зато отражает суть — мы выбираем не только из россиянок, а из всех звёзд, которые подходят под интуитивно понятную, но трудно описываемую категорию «наши».

Внимание!

Следующие несколько абзацев — лирическое отступление для гуманитариев. Если ты смело можешь повесить на себя ярлык «технарь», то переходи вот сюда.

В других странах такие рейтинги становятся событием, о них пишут. Журнал MAXIM — единственный, кто не ленится делать его в России, но в новости он не попадает. Зато мне, главному редактору, часто звонят и просят прокомментировать результаты подобных хит-парадов Америки и Англии. Я говорю: «А почему вы пишете про заграничные рейтинги, а про наш нет?» Обычно они отвечают: «А вы тоже делаете рейтинг? Как интересно, мы не знали…» Вот такая судьба отечественного продукта.

Если кто-то думает, что составлять рейтинг так уже весело, этот кто-то заблуждается. То есть, конечно, это весело, но процесс трудоёмок, а плоды горьки: 99 из 100 участниц в результате смертельно обижены на журнал, а победительница польщена, смущена и не может приехать на церемонию.

Но мы не ропщем! Работать в журнале MAXIM и роптать как-то странно. Мы назвали сами себя главным и чуть ли не последним настоящим мужским журналом страны, а значит рейтингу быть.

Другое дело — каким ему быть? Как его провести так, чтобы результат идеально отвечал задаче: объективно замерить народную любовь на текущий момент, расставить всех по местам, дать легко волеизъявиться всем страждущим и не допустить подтасовок? Да-да, мы не идем простым путем, это хит-парад составляет не редакция, а читатели. Как облечь это воздушное, неосязаемое, нежное под званием «сексуальность» в цифры? Как измерять алгеброй гармонию?

Казалось бы чего проще: залей сто фамилий на сайт и позволь ставить галочки всем желающим. Так рассуждал бы гуманитарий. Так рассуждал бы честный человек. Но мир полон хитрых технарей. Они есть даже в нашей редакции! И вот из-за них мы вынуждены из года в год задавать себе вопрос: каков у нас механизм голосования?

Сразу замечу, что мы никогда не вмешивались в ход голосования, хотя многие не верят. Не вмешивались по двум причинам: во-первых, из спортивного интереса, во-вторых, у нас как-то не было резона это делать. Зачем бы нам проталкивать кого-то? Даже если бы нам предложили за это деньги, мы бы не рискнули их взять во избежание подрыва репутации. К тому же никто ничего не предлагал (я, кстати, удивлен). Ради того, чтобы звезда согласилась появиться на обложке? У нас и так перебывали все звезды, ради какой-то одной опять-таки рисковать репутацией? Нет, знаете ли. И главное, открою секрет: честным человеком быть гораздо, гораздо проще, чем жуликом.

Так вот, вопрос: как организовать голосование? Дальше честным гуманитариям, может быть, читать не стоит, потому что статья внезапно уводит нас в дивный мир алгоритмов, уникальных идентификаторов и IP-адресов. А вот остальных по окончании экскурса в сексуально-математические проблемы мы попросим поучаствовать в мозговом штурме.

Итак, ещё раз задача, более формализованная. Есть список из сотни фамилий с фотографиями. Его определяет редакция: берёт прошлогоднюю сотню, убирает последнюю десятку, добавляет десятку дебютанток. Список отсортирован по алфавиту. Нужно пересортировать его по количеству голосов, отданных за каждую участницу. Подразумевается, что один человек (читатель, зритель, любой желающий) может голосовать только один раз. Главная проблема: как предотвратить повторное, многократное и протестное голосование, когда фанаты прилагает специальные усилия, чтобы повысить рейтинг своей кумирши и занизить результаты её конкуренток.

И это не разовые явления: более предприимчивые и популярные (что не всегда значит сексуальные) звёзды агитируют своих поклонников голосовать из всех сил, обещая им даже какие-то виртуальные подарки. В итоге десять энтузиастов с небольшим бюджетом могут существенно исказить картину. Особенно учитывая, что результаты голосования интересны миллионам, а участвуют в нём только несколько тысяч читателей с обостренным чувством долга.

Какие же методы замера народной любви мы пробовали и какие у них были недостатки?

  • Обычное интернет-голосование даже с учетом cookies и ip-адресов мы отвергли сразу, так как куки легко стереть, а адрес подменить.
  • Голосование только зарегистрированных пользователей тоже нам не подошло, несмотря на приятность перспективы получить несколько тысяч новых адресов в базу данных читателей. Армия свежерегистрировавшихся мёртвых душ нас испугала.
  • Для начала мы пошли простым аналоговым путем: впечатали в каждый экземпляр журнала уникальный код. Оказалось, при современном развитии печатного дела это совсем не сложно! Вводишь код на сайте — получаешь право голоса. Один журнал, один голос. Но мы не учли, что на кону тогда был автомобиль (о, шальные нефтяные бюджеты!), стоивший несколько десятков тысяч долларов. А несколько тысяч номеров журнала стоили ровно на порядок меньше. И некоторые сообразительные участницы не поленились сложить два и два в уме. Да-да, неожиданно мы заметили поток голосов за одну и ту же знаменитость с одного и того же ip. Страшно представить судьбу этой разовой оптовой закупки… Что сделали с теми номерами после выжимки кодов?
  • На следующий год мы стали хитрее. Мы решили, что телефонный номер куда уникальнее экземпляра журнала. Вводишь номер в окошке на сайте, тебе бесплатно (более того, за счёт, блин, редакции) приходит SMS с кодом, который ты вводишь на сайте и получаешь право голоса. Но нет. Оказалось, что цена SIM-карты в подземном переходе с каждым голом понижается, а ушлость участниц повышается. Были, были и в том году странные скачки голосов. Ябедничали участницы друг на дружку… Эх, девочки, девочки, не ссорьтесь! Мы, мужчины, так странно устроены — можем любить несколько женщин одновременно. Не внемлют. И то сказать, не за народную любовь бились в том году, а за корону ювелирную цены немалой. А она одна.
  • В каком-то году мы совсем было разочаровались в народном голосовании и решили, что голосовать будет жюри. Да, вот так. Сотня известных мужчин несомненной ориентации заполнит на наших глазах под дулом пистолета сотню анкет, среднее арифметическое и — бинго! И не сказать, что бинго обернулось фиаско… Нет, это было хорошее голосование, просто оказалось, что мнение сотни известных мужчин (то есть актёров, музыкантов, спортсменов и т.п.) не совсем репрезентативно. Половина жюри за свою жизнь успела посожительствовать, родить детей и развестись с половиной претенденток на корону, и голосование превратилось в выяснение отношений, выражение личных симпатий и демонстрацию своей утончённости. Да, видимо члены жюри не поверили нашим обещаниям сохранить конфиденциальность их выбора. Никто не хотел признаться, что считает сексуальной Анну Семенович! Народные любимцы, героини юмористических сериалов и, прости господи, «Дома 2» резко пошли вниз. Наверху оказались актрисы интеллектуального кино, которых мы, конечно, тоже очень любим и сами включили в список, но заветная объективность, кажется снова ускользала из наших рук.
  • В последний раз мы решили пойти совсем сложным путем. Глас народа уязвим и подвержен агитации, жюри предвзято. Давай-ка, решили мы, совместим два алгоритма. То есть проведём два голосования, два рейтинга — народный и богемный, а потом их объединим. Для пущей хитрости мы не стали давать народу, как раньше, право раздать десять голосов сотне участниц. Мы зарядили алгоритм, известный как „hot or not“. Пользователю случайным образом выкидывается две участницы, а он должен определить, какая из двух краше. И так пятьдесят раз, пятьдесят пар. Таким образом, думали наивные мы, он не сможет занизить результаты конкуренток своей либимицы. Не тут-то было! Безумные фанаты всё равно крутили всю карусель, и нарочно ставили минус тем, кто был выше любимицы.
    Можно было, конечно, не показывать живых результатов по ходу голосования, это бы затруднило задачу мухлёвщикам, но и весь интерес бы убился. Все-таки за ходом голосования следила вся страна. Ну, нам хотелось бы так думать.

И вот настал год 2015-й. И мы снова в раздумье, какой механизм воплотить в жизнь. Честно говоря, мы подыссякли. И поэтому обращаемся к читателям: предложите идею, как нам провести голосование, чтобы оно было объективным. Старт мы наметили на 15 сентября. В нашем распоряжении обычный арсенал — сайт, соцсети, сам журнал и команда кодеров, которым нужна хотя бы одна ночь (но лучше пара недель), чтобы воплотить заветный алгоритм.

Присылайте свои идеи на maxim@maximonline.ru с пометкой «Алгоритм 100 самых сексуальных» или начинайте обсуждение тут же, под постом.

Комментарии

22
под именем
  • Все комментарии
Показать сначала
  • Новые
  • Старые
  • Увидел фотку Шейк и забыл про что статья)))
  • Оставит только голосование читателей. Голосовать пользователь может так: выбирает 50 или чуть больше участниц. Он составляет собственный рейтинг и голосует согласно ему,т.е. одной он дарит 1 голос ту ,что в конце его рейтинга,другой, чуть повыше - 2 и т.д. до 50 (самой-самой). В последствии,если это удастся сделать разработчикам, он может поменять свой решение и отдать,скажем 3 голоса другой.
  • Несколько запоздалый комментарий, но сейчас все движется к предоставлению скана сетчатки. Мне кажется, что не стоит постоянно усложнять голосование, вместо того, чтобы вычислять накрутчиков, лучше утопить их потоке народной любви. В статье прямым текстом написано, что “результаты голосования интересны миллионам, а участвуют в нём только несколько тысяч читателей с обостренным чувством долга”. Возможно, имеет смысл немного взбодрить эти самые миллионы-- переход на страницу рейтинга, требует проголосовать один раз в режиме хоторнот, просмотр увеличенной фотографии-- еще одно голосование. Без капч, регистраций и любого занудства, чтобы набрать максимум голосов-- что-то в духе мерзотных попапов “боже мой, вы все еще не лайкнули нас”. Если посетитель хочет голосовать еще, ему уже надо зарегистрироваться, но при этом с каждым голосованием и подтверждением он может получать плюшку в виде, к примеру, новых фото. В общем и целом, нужно добиться того, чтобы в голосовании участвовало как можно больше реальных людей, а не ставить там заборы, которые преодолеет только самый отчаянный поклонник, словно рыцарь бьющийся с драконом в честь прекрасной дамы.
  • ID компьютера - это физический адрес сетевой платы вашего компьютера. С его помощью компьютер подключается к сети интернет. Если посмотреть абстрактно, то ID Компьютера (ethernet address машины) - это почти тоже самое, что у человека отпечатки пальцев, по которому можно определить личность. У каждого компьютера ID сетевой платы уникальный. Суть в чем, надо сделать мини программу для голосования, и таким образом уникальность голоса определить. прожка оправляет на сервер уникальный ID компа. это не даст 100% результата, но как минимум уменьшит степень накрутки в разы....
  • В автоматическом режиме проверить уникальность пользователя с абсолютной точностью пока невозможно. Наиболее простым вариантом была бы проверка по сим-картам, если бы удалось получить доступ к данным сотовых провайдеров (к примеру дата регистрации карты > года, или карта использовалась более 100 часов, или что-то подобное, или всё вместе). Ну а в текущих реалиях - скан паспорта + фотография с вебки вместе с журналом с уникальным номером (номер должен быть виден). Ну и 1 грустный человек, который будет проверять всё это дело на валидность. Ну и не показывать результаты голосования до дня-X. Любую схему можно обойти, при большом желании.
  • Можно навестить события Гугл Аналитикса. У Аналитикса сложный алгоритм определения уникальности пользователей.
  • Можно объединить несколько деталей ваших алгоритмов: - регистрацию проверять не по сайту Максим, а во Вконтакте и чтобы друзей у человека было не меньше 50-ти. Программисты придумают, как это проверить в автоматическом режиме. Как вариант, можно приложение специальное написать специально для голосования. - а собственно для голосования алгоритм с парами самый нормальный.
  • Предлагаю довольно интересную идею: Суть заключается в том, чтобы принимать голоса только по веб-камере. Алгоритм фиксирует лицо, показывает список участников, после записывает голос в базу, и параллельно фотографирует лицо голосующего. Если лицо не зафиксировано - то список не выводится. Лицо следующего человека сравнивается с остальными лицами в базе. Если они идентичны - выбивает ошибку. Все это можно реализовать при помощи JavaScript (Ajax, jQuery). Все доступные библиотеки для работы с лицами есть в публичном доступе. Нужно только желание и умения. Редакции желаю удачи в написании подходящего алгоритма)
  • Тогда как выборы, вкладываем в каждый номер журнала анкету, естественно имя фамилия и эту анкету лично от голосующего при предъявлении паспорта принимаем. Другой вариант выдавать анкеты лично каждому желающему проголосовать в редакции журнала
  • Выбирайте 30, 100 или 10000 счастливчиков из числа ваших подписчиков и предлагаете стать им участниками конкурса, точнее жури.