2014年01月13日

Slickをちょこちょこ使う

最近、Slickをちょこちょこ使っている。Typesafeのお墨付きもあるし、ScalaからDBを使おうと考えると、これを選択するのが一般的になるのだろう。

今週末はどの記述がどういうクエリを投げているのか確かめたりしてみた。

ScalaのORM「Slick」でいろんなSQLを投げてみる
http://www.mwsoft.jp/programming/scala/slick_query.html

続きを読む

2014年01月12日

日記的なもの

そこそこに使い道がありそうなコードをいくつか書きつつ、原稿の為の調査もちょこちょこしつつ。Slickの使い方を覚えつつ。

年末年始から、休まず勉強している。

うまくいっているのは、仕事を変えたお陰だと思う。自分が底辺にいることを実感できる良い職場にいるので。

多少まともに使えるエンジニアというのは、どこへ行っても下にも置かない扱いをされるもので、私の場合、そうした場所にいるとプログラマとしての目標を高く維持することが難しくなる。そうならないでいられるというのは、とてもありがたいことだと思う。

「好きな職場」は他にもたくさんあったけど、「良い職場」という点では、これまでに行った中でも1番かもしれない。

続きを読む

2014年01月11日

Slickのelementsメソッドがfetchすることを確認する

Slickで取ったSQLの結果はたいていlistかfirstOptionで取っていたのだけど、大きめの結果を取る場合はfetchした方が良いよなという事で、elementsを使ってみる。

確認のため、1000万件の結果を取得させてみて、listと比べてメモリ消費量が少ないことを確認する。 続きを読む

2014年01月02日

LuceneとWikipediaのデータを使ったクラスタリング

年末にこんなのを書く。

1日で作れるWikipediaとLuceneを使った簡易な文書カテゴリ判定機能
http://www.mwsoft.jp/programming/nlp/wikipedia_categorizer.html

Wikipediaのカテゴリと類似文書検索を使った簡単なものだけど、下手なクラスタリングよりは精度が出る。

Luceneを使ったカテゴリ分類というのはけっこうあって、たとえばCarrot2のようなLuceneのインデックスからクラスタリングを実行するソフトがあったり、Mahoutのクラスタリングの素材として利用している例もけっこう見られる。

TF/IDFで単語ごとの重みを出せるとか、出現頻度の低いTermを削れるとか、英単語の活用が揃えられるとか、動詞の基本形を揃えられるとか(あ、今回のコードではやってないや。後でやろう)、カタカナの長音の有無を揃えられるとか(これもやってないな)、Luceneは日本語のNLPツールとして非常に優秀だと思う。

2014年01月01日

日記的なもの

去年1年を振り返ってみる。

ダメな1年だった。プログラマ的にはまるで成長していない。本はたくさん読んだので、文学的な方面での知識は増えた。あと、将棋と英語の勉強もそこそこ進んだ。でも本業のプログラマとしての面で伸びないとアカンだろ。

ということで、年末年始は家に篭って特訓中。前から書こうと思ってたコードをいくつか書いている。今年はプログラミングの能力強化を重点的にやる。具体的には数式をコードに落とすあたり。

続きを読む