회원의 다른글 보기 기능은 원래의 의도는 그 회원이 쓴 다른 좋은 글을 노출시킴으로써 조회수를 늘리고 컨텐츠 활용도를 높이자는겁니다.
그럼 어떤 기준으로 노출시킬 것인가?
보통 여기서 방법론은 두가지로 나뉩니다.
최근글을 보여주던가
인기글을 보여주던가
최근글은 정말 의미없는 경우가 많습니다.
좋은 글을 쓰는건 드문드문 있는 일이고 대부분의 사람들은 뻘글을 더 많이 쓰기 마련이니까요.
다만 모 사이트처럼 이걸 사상 검증용이나 알바 검출용으로 이용하는 경우도 있습니다만 그렇게 좋다고 말하긴 어렵겠죠.
그럼 인기글은 어떨까요?
인기글의 문제점은 조회수나 추천순 같은걸로 정렬할 경우 상위 순서가 바뀌는 경우가 정말 드물다는겁니다.
특히나 노출이 거듭될수록 점점 더 차이가 벌어지기 때문에 순서가 거의 붙박이처럼 고정되어버릴 가능성이 있습니다.
이를 방지하기 위해서 기간제한을 두는 방법도 생각해볼 수 있고 이게 아마 그나마 현실적인 가장 좋은 방법일겁니다.
하지만 붙박이화를 피하기 어려운건 마찬가지입니다.
일정 조건을 만족하는 범위내에서 랜덤같은 비현실적인 방안도 생각해볼 수 있긴 하지만 그건 서버 성능이 견디질 못할겁니다.
근데 여기서 [회원의 다른글 보기] 기능에 대해서 좀 관점을 바꿔보겠습니다.
이 기능에 대해서 가장 간절하고 관심이 많은 사람이 누굴까요?
회원의 다른글 목록을 보여주면 대부분의 회원은 관심도 없거나 그냥 우연히 눈에 띄는게 있으면 클릭해서 들어간다.. 정도의 입장일겁니다. 전혀 아쉬울게 없죠.
사실 이 기능에 대해서 가장 신경쓸 사람은 바로 자신의 다른글이 노출되는 회원 본인입니다.
다른글은 어떻게 보면 일종의 자기 프로필이나 마찬가지입니다.
내가 누구고 어떤 사람인지 보여주기 위한 수단인 셈이죠.
또한 내가 다른 사람들에게 더 보여주고 싶은 글을 조금이라도 더 많이 노출시킬 수 있는 강력한 홍보수단이기도 합니다.
이 글은 노출되면 싫고, 이 글은 노출하고 싶고를 정확하게 알 수 있는건 회원 본인뿐인겁니다.
조회수 추천수가 높으니까 노출한다? 하지만 되려 조회수 추천수가 낮은 다른 글을 다른 사람들이 더 많이 봐주기를 바라면서 노출하기를 원할 수도 있는거죠.
보는 사람이 아니라 보여주는 사람 입장에서 생각한다면 어떤 자동화 방식도 만족시키기 어렵습니다.
오직 보여주는 사람 본인이 보여줄 글을 [직접 선택]하는 것만이 유일하게 만족시킬 방법이라고 할 수 있겠지요.
그리고 그렇게 기계적인 조건 검색이 아니라 개성이 엿보이는 인간의 선택만이 실질적으로 다른글 목록의 퀄리티를 높일 수 있는 방법이 아닐까 합니다.
캐싱을 한다고 가정하면 좀더 지능적인 알고리즘도 적용할 수 있습니다. 널리 알려진 레딧에서는 일단 추천수 순으로 보여주되, 시간이 지날수록 가중치를 낮추는 방식을 씁니다. 추천을 많이 받은 글은 오랫동안 상위에 머무르고, 추천수가 적은 글은 금방 묻힙니다. 새 글은 추천수가 적어도 일단 상위에 노출되지만, 추천을 받지 못하면 급속도로 묻힙니다.
말씀하신 것처럼 글쓴이가 자신의 프로필과 함께 직접 커스터마이징하는 방법도 좋겠지만, 만약 자동으로 추출한다면 이 정도쯤은 지능적으로 골라줄 수 있어야 한다고 생각합니다.