I put together a little app this weekend which lets people translate phrases through different languages and see the often funny or interesting results: http://translation-telephone.com
On the sidebar, I display "recent" and "popular" phrases, to encourage people to browse others. Right now, "popular" is a random three of the top 30 viewed phrases - really basic.
I'd like to make it smarter and I imagine there are a variety of techniques that I can use, like the HN metric for frontpage news.
What techniques do you guys suggest? Thanks!
(Note: Architecture is App Engine/Python, if that's relevant)
For a real-world example (albeit one from code that's not much beyond "prototype" status) feel free to look at what we do in Neddick:
https://github.com/fogbeam/Neddick/blob/master/grails-app/se...
look at the calculateScore() and calculateHotness() methods in particular.
What we do there is basically just use 0 as the default, count each upvote as +1 to score and each downvote as -1 to score, then use the score as the hotness, before decaying by age. It's simple and not optimized at all, but it gives the general effect we're looking for.