?

Log in

No account? Create an account
 
 
08 August 2008 @ 12:32 pm
Сервис "Френдоскоп"  
Мне давно хотелось поэкспериментировать с ЖЖ: уж очень благодатная область для изобретательства. А так как выдалась свободная неделька, и одна идея давно крутилась в голове, я решил её реализовать.

В результате получился сервис "Френдоскоп" - определитель интересов друзей, который и хочу вам представить.

Френдоскоп просматривает список взаимных друзей заданного пользователя и выдаёт таблицу наиболее популярных у них интересов. А также помечает те, которые совпали с интересами самого пользователя. Получается, например, вот так:

Друзья psi-bg интересуются
чемсколько человек
философия4 (25 %)
ролевые игры4 (25 %)
книги3 (19 %)
чай3 (19 %)
china3 (19 %)
power metal3 (19 %)
психология3 (19 %)
природа3 (19 %)
Всего взаимных друзей: 16
Узнай, что интересует твоих друзей!

Зачем это нужно?

Есть разные варианты:
  • вы можете посмотреть, какие темы больше всего интересуют ваших друзей (и, например, учитывать это при написании постов);

  • вы можете узнать, чем интересуются друзья ваших знакомых и на практике проверить справедливость пословицы "Скажи мне, кто твой друг, и я скажу, кто ты";

  • вы можете выяснить, что интересует друзей человека, с которым вы только что повстречались на просторах ЖЖ, чтобы составить о нём впечатление. Причём сделать это независимо от того, что он написал в списке интересов в своём профиле.


Если у вас появятся какие-нибудь замечания или предложения, буду рад обсудить. :)
 
 
 
Сергей Мухамедовottenki_serogo on August 8th, 2008 08:53 pm (UTC)
мне правда стоит ждать 1300 секунд?
psi_bgpsi_bg on August 8th, 2008 08:56 pm (UTC)
Увы, 1761 взаимный друг - это немало.
Возможно, вас немного утешит, что следующие сутки таблица будет формироваться из кеша, поэтому всё будет происходить намного быстрее.
Сергей Мухамедовottenki_serogo on August 8th, 2008 08:58 pm (UTC)
ну что ж
400 секунд прошло, будем ждать :)
psi_bgpsi_bg on August 8th, 2008 09:03 pm (UTC)
Если счётчик перевалит за 1300 и остановится, попробуйте перезагрузить страницу: сейчас обнаружился баг в обработке большого количества френдов.
Я стараюсь его исправить, но как временная мера должно подействовать.
Сергей Мухамедовottenki_serogo on August 8th, 2008 09:09 pm (UTC)
остановился на 819 секунде :)
Сергей Мухамедовottenki_serogo on August 8th, 2008 09:10 pm (UTC)
вау!
справился за 6 секунд!
Альфина, невеста голубяalphyna on August 8th, 2008 11:34 pm (UTC)
забавно и бессмысленно. =)
ex_shagrost on August 9th, 2008 04:10 am (UTC)
но главное - ЗАБАВНО ;))
psi_bgpsi_bg on August 9th, 2008 05:52 am (UTC)
Забавно - это уже неплохо. ;)
ex_shagrost on August 9th, 2008 04:10 am (UTC)
Интересный свод статистики. Опробовал. +1
psi_bgpsi_bg on August 9th, 2008 05:37 am (UTC)
Спасибо. :)
lomka on November 23rd, 2009 08:38 am (UTC)
Можно расширить функциональность Вашего сервиса, добавив к нему
возможность поиска жж-юзеров, с которыми у тебя наибольшее
количество совпадающих интересов. Т.е., чтобы в результате
введения ника - выдавался список, с указанием общих интересов, отсортированный по количеству оных. Это был бы мега-полезный
сервис, для поиска новых друзей. Что-то типа частичного
применения коллаборативной фильтрации, для поиска друзей.
psi_bgpsi_bg on November 23rd, 2009 01:09 pm (UTC)
Вы не поверите, но тоже есть. ;)
http://123lj.ru/fsearch/
lomka on November 23rd, 2009 02:10 pm (UTC)
Не поверю, и правильно сделаю, потому что, фактически - нету :(.
Оно - очень медленно работает, и попыхтев минут 5 -
не выдало мне никакого результата, кроме того, что:

"К сожалению, среди друзей друзей пользователя lomka не найдено людей с совпадением интересов более 10%. Попробуйте воспользоваться расширенным поиском и задать менее жёсткие ограничения."

А при переходе к расширенному поиску - нагло запросило 86 р.

И что за волюнтаризм - не более 500, и при этом - друзей друзей ?
Зачем мне друзья друзей, когда я их и так вижу, в комментариях
френдленты ?

Если в жж - хотя бы миллион юзеров, а их больше,
то эффективность вашего сервиса - 0,05% от возможной.

В общем, если довести это до ума - можно реально неплохо зарабатывать,
но, конечно не по 86 р. за запрос, а хотя бы, по 10.
Но, для этого, конечно, нужен отдельный сервер.
psi_bgpsi_bg on November 23rd, 2009 05:01 pm (UTC)
Даже обработка просто полного списка друзей друзей может занимать часов 6. Пробовал. Поэтому и сделано ограничение на 500 человек: иначе пара запросов забъёт очередь обработки на несколько суток. А чтобы проверить ВСЕХ пользователей ЖЖ за адекватное время, нужно или иметь кучу своих серверов, занимающихся только парсингом пользователей, или подключение к базе самого ЖЖ.
lomka on November 23rd, 2009 05:22 pm (UTC)
Тут нужен другой подход, в плане организации бизнес-логики.
Сначала нужно сграбить данные всех юзеров, в базу,
а потом, к этой базе - делать 1 запрос, который будет, при таком объёме данных (пусть это, даже, будет, 10 миллионов юзеров, хотя, сначала, можно ограничится только Россией - а это на порядок меньше), выполняться за несколько секунд, максимум, причём, многопотоково.
Естественно, оборудование и база должны быть промышленными, и
администрация жж - должна сотрудничать, иначе
грабить базу по сети - будет очень долго, а также,
в силу ряда других причин.
Поверьте, я знаю, о чём говорю, я "трогал руками" такие базы,
и такие запросы. Ничего невозможного в этом нет.
psi_bgpsi_bg on November 23rd, 2009 07:04 pm (UTC)
Администрация ЖЖ, если будет желание, такой сервис сама легко сделает. А доступ к своей базе они так просто не дают: пробовали уже люди договориться.

Я и не говорю, что это невозможно. Просто разворачивать промышленный сервис на основе одного только поиска друзей бесперспективно. Не окупятся усилия, потому что это сервис "разового" использования.

Кстати, в том чтобы искать друзей среди людей, связанных с пользователем социальными связями, есть ещё один резон: повышается вероятность того, что это будут люди "из одной песочницы".
lomka on November 23rd, 2009 07:23 pm (UTC)
Так, а смысл, то в том, чтобы, как раз, найти людей
из другой песочницы, не связанных этими связями, с тобой.
А чтобы было перспективно - на этой базе можно организовать ещё,
несколько сервисов. Например, вводишь ник любого жж-юзера, и система
просчитывает тебе цепочку взаимных, или - просто- френдов до тебя.
Каждый такой запрос сделать платным, с оплатой смской,
рублей по 10, не больше. А чтобы жж это было, тоже,
интересно - для платных акаунтов - добавить функциональность
возможности просчёта от любого пользователя до любого.
Определённая часть бесплатников - выдавится этим в платников,
от чего жж получит профит. Особенно если это, как нужно, пропиарить.
В сервисе поиска - тоже можно приделать разные фичи,
"только для платников".