A new SYO App: Subscriptions Like Mine. It looks for readers whose subscription lists are similar to a particular individual’s. The results are weighted by a “strength” measure that inversely weights the popularity of the feed, so you can find people with similarly obscure tastes, and also tracks the number of overlaps as a fraction of total subscriptions, so that Jay McCarthy isn’t automatically everyone’s friend (though he does show up quite a bit :-).
2 thoughts on “”
Comments are closed.
Andrew,
Can you share the code that figures this out? It is exactly what I was thinking of doing a couple of days ago.
LikeLike
Okay, but don’t say you didn’t ask for it!
The SQL query is below. :n_subscriptions is my total number of subscriptions”, b.n_subscriptions is the like-minded person’s number of subscriptions. There’s lots of room to fool with/debate the strength function. Anyway, here’s the SQL.
select * from (
select s2.subscriber_id, count(s2.subscriber_id) as overlap, sum(500*(1/(8+f.n_subscribers))*((1/(5+b.n_subscriptions))+(1/(5+:n_subscriptions)))) as strength, b.text, b.url
from ff_subscription s1,
ff_subscription s2,
ff_feed f,
ff_subscriber b
where s1.subscriber_id = :id
and s2.feed_id = s1.feed_id
and s2.subscriber_id != s1.subscriber_id
and f.id = s2.feed_id
and b.id = s2.subscriber_id
group by s2.subscriber_id, b.text, b.url
order by 3 desc
) where rownum
LikeLike