1. A computer-implemented method for ranking a plurality of communities, each community belonging to one of a plurality of different community types, the method comprising: storing ranking data about the communities, the ranking data comprising data about events performed in the communities relating to members and posts in the communities; determining a score for each of the communities based on types of relationships in the community and a recency of the events related to the communities, wherein the recency is calculated by applying a scale factor based on each event occurring within a predetermined time period from when the score is determined and applying an exponential time decay function to the ranking data in order to calculate the score for the community; determining a relative ranking for each of the communities based on the respective community's score; storing the score and the relative ranking of each of the communities; identifying communities with the score exceeding a predetermined threshold; and generating code for, when executed, displaying the communities with the score exceeding the predetermined threshold in a visually distinguishable way on a webpage associated with the social network.