tokuhirom's Blog

FrePAN のスコアリングをチューニングした話

現時点で、search.cpan.org よりも、検索精度よくなったとおもいます。つまりこれは「俺がのぞむ検索結果」にちかい結果をだしてくれてる気がするという程度の意味ですが。

基本の検索エンジンに groonga をつかうという方針はかわってないんですが、prefix match した場合に score をつよめにつけたりとかしてます。
あと、これはおおきいとおもうんですが、FrePAN には I use this っていう機能があって、自分がつかってるモジュールを登録できるようになってるんですが、今回、つかってる人がおおいモジュールは検索スコアがあがるようになりました。これは前からかなりやりたかった機能だったので、やっと実現したというかんじ。なお、コメントはべつに日本語でかいてもぜんぜんおーけーです。

個人的に CPAN Ratings があんまりすきじゃないんですよね。「いや、あんたがそのモジュールきらいなのはわかったけどさ、そんなにメタクソにいわなくてもよくね?つかわないんならそっとしとけばいいじゃん」ってかんじなコメントが結構ついてたりするし、レーティング1と5しかつけない厨房っぽい人とかもいるので、なんかあんまアテにならないんですよね。しかも、あれってバージョンがあがってなおったりした場合にもそのままコメントのこりつづけるんで、そのへんも微妙。で、実際、レート1をつけてる人とかにかぎって CPAN module とかアップロードしてなかったりして。だから、今回は positive なニュアンスのみをもつ「I use this」のみにしました。あと、github の oauth をつかってるので、そのユーザーがどういうバックグラウンドの人かとか、すぐにわかります。口ではえらそうなこといってても github のアクティビティがほとんどない人とかもまるわかりです。将来的には、github の follower がおおい人のスコアを重視するとか、github でつながってる人のスコアをたかく評価するとか、そういうのもできるかな、とか夢がひろがりんぐですね。

また、2004年以前にリリースされたモジュールについても、スコアをさげています。2004年というのは 5.8.2 がリリースされた年ですので、それ以後リリースされていないモジュールは、まずメンテされてないだけだろうということです。

要は、「CPANソムリエになる方法」で記述していたルールにしたがって、つかわれているモジュールのスコアをあげてやろうということですね。はい。

【追記】
http://frepan.org/i_use_this/ranking
ついでに、ランキングもつけてみたが、だいぶしょうもないのがまじってるな。。

そして、投票してくれてる人がすくないので、ほとんど俺無双になっている。投票するモチベーションを向上させるための仕組みがなにか必要だなー。