ぱたへね

はてなダイアリーはrustの色分けができないのでこっちに来た

日本語入力を支える技術

日本語入力を支える技術、読んだのはずいぶん前なのですが、感想を書くのが遅れてしまいました。感想を書くタイミングは逃したし、他の方が的確なレビューを書いているので、専門外の私があえて書かなくても良いかなと思っていたら、筆者から読者へのメッセージ(日本語入力を支える技術 振り返り、もしくは技術書を書きたい人へ)を見つけました。お礼の意味で感想を書きます。本当に良い本を出していただき、ありがとうございました。

本の内容

身近なプログラムである日本語入力を中心に、中で使われている技術、歴史的な話、そして将来の展望まで、丁寧に丁寧に説明してある本です。私を含め、ほとんどの人は日本語入力のプログラムを書くことは無いと思いますが、それでも十分に面白いです。プログラミングの勉強をしていて、何故アルゴリズムとデータ構造の勉強しないといけないか悩んでいる人に特にお勧めします。アルゴリズムやデータ構造が何かしらの問題(速度やリソース)を解決する手段であることが良くわかります。

あと、WnnPOBoxもでてくるので、おっさん達も楽しく読めるはずです。

この本の良いところ

丁寧な説明、この一言に尽きます。一番最初のアルゴリズムの説明を始める前に「文節」や「単語」の説明から始まります。決してごまかすわけでなく、それでいて本を読んでいく上で必要な情報が丁寧に説明されてます。本の中に出てくるアルゴリズムやライブラリについても、ほとんどが次のステップへのポインターが示してあり、興味を持った人は自分で調べられるようになっています。アルゴリズムやデータ構造も丁寧に説明してあるのに退屈でなく、このサイズにこれだけ濃い情報を入れるのは相当苦労しただろうと思います。

あとは値段です。私は本の値段について何か言うことは少ないのですが、この本はどう考えても安いです。中身の濃さを考えると今の3倍でも良いんじゃないかと思います。

面白かったところ

バイナリアン的には前半に出てくるIME(FEP),アプリケーション、OSの関係の所が面白かったです。変換候補を描画するのは誰なのかってのは、今まで意識したことが無かったので楽しく読めました。後半の機械学習の説明は、機械学習素人の私でも何となく雰囲気が分かるように書いてあり、一気に最後まで読めました。大量のデータの取扱いについて、Cプログラム高速化研究班と比べてみると面白いです。単純にレイヤーの違いでは片付かない、データに対する姿勢の違いが見えてきます。今後機械学習を仕事で使うようなことになれば、もう一度この本に戻ってきたいです。

買ったときは、日本語入力なんてプログラミングすることは無いだろうから読んだら誰かにあげようかとも思っていたのですが、あまりにも良い本だったので本棚にしっかり保管することにしました。値段分の価値は絶対にあるので、欲しい人はがんがん買ってください。