Revision history [back]
It's in askbot.models.question.Thread.get_similar_threads
.
First up to 100 questions with matching tags are selected, then similarity is calculated as number of overlapping tags, then 10 most similar threads are shown.
Not a rigorous algorithm at all, maybe you could suggest something better?
The algorithm should be either fast enough to generate the list in real time or we'd need to denormalize the list and recalculate periodically. Now it is not too slow and the result is stored in the cache so we won't need to do that computation every time.