自然言語処理でプログラミングするときのお作法

午前中、メールのお返事などなど。

昨日は秋の夜長に「リーダブルコード」を読んでみたのだが、コンパクトにまとまっていて、割合よかった。

リーダブルコード ―より良いコードを書くためのシンプルで実践的なテクニック (Theory in practice)

リーダブルコード ―より良いコードを書くためのシンプルで実践的なテクニック (Theory in practice)

 
内容としては「コードコンプリート」などで書かれている内容のサブセットなのだが、簡潔に「どのような変数名をつけるべきか」「ループがネストしないようにするにはどうしたらいいか」などといった内容が詰まっていて、これからコードを書こうという人が読むにはいいスタートなのではないかと思う。(「コードコンプリート」は上下巻合わせたら1万3,000円するし、最初に読もうと思うには敷居が高い……)

昼から学内実習の打ち合わせx2。それぞれ少しずつ前進。しかしみなさん手が早い (実装能力がある)。自分がM1のころはどうだっけ?と思ってしまう……。先日のSVM勉強会でOBの方が「いまNAISTの入試を受けたら落ちるかもしれない」とおっしゃっていたが、確かにレベルは年々上がっているのかも。やはりNAISTは他の大学と違い、ニッチなところを狙ったほうがいいと思う。

夕方、松本先生に呼ばれて、研究費関係の相談。今年度は自分の科研費が切れてしまう年なので、どうするか考えないといけないのだが、松本先生曰く、少額の研究費を取ろうと大量に申請書を書くより、出す場所と研究ネタを絞ったほうがよい、とのこと。バイオなどと比較すると自然言語処理はそんなに研究費は必要ないし、松本研にいる限りは研究費はあくせくして取らなくても松本先生が融通してくださるので、確かにたくさん書くのは消耗するだけだし、今年はもう科研費だけ出せばいいかなぁ。

いまの科研費は2年で出したのでこんな早くまた書かないといけないが (申請したときは、自分が2年後には大学で教員をやっていないかもしれないので、短くしたのだが)、しばらく大学にいるなら3-4年と長めに申請したほうが楽だろうな〜……(この点、あまり自分が信用できない)。いずれにせよ、10月〆切なので、10月になってから考えよう。(問題の先送り)

夕方は誤り検出・訂正ワークショップの残務処理など。ページ番号を振ったり、USレターとA4を統一したり、けっこういろいろやることがある。英語の文法誤り検出システム作成に使われたプログラミング言語を改めてながめると、Java (2チーム), C#, Python, Perl といろいろあって、おもしろい。自然言語処理でもそれなりのシステムを作るには、意外とスクリプト言語は使われていないのかも?