1. A method comprising: receiving a query by a computing device; determining a plurality of discussion groups that are relevant to the query by the computing device, wherein each discussion group is associated with a plurality of messages and each message is associated with an author; for each discussion group of the plurality of discussion groups, determining an authority score for each author associated with a message of the discussion group by the computing device; for each author associated with a message, determining a preference score for the author for each discussion group of the plurality of discussion groups by the computing device, wherein determining the preference score comprises determining the preference score based on a proportion of a number of occurrences of the discussion group that the author participated in to a total number of occurrences of the plurality of discussion groups that the author participated in; and ranking the discussion groups of the plurality of discussion groups using the preference scores and the authority scores by the computing device, wherein using the preference scores and the authority scores comprises generating a stationary distribution of a Markov process for the query and the discussion groups using the preference scores and the authority scores, and wherein ranking the discussion groups comprises ranking the discussion groups using the generated stationary distribution.