2012年の振り返り

今年は本当に一年を通してしんどい年でしたが、毎年恒例の振り返りをやってみたいと思います。

執筆関連

昨年の終盤から今年の春過ぎまでScala逆引きレシピを執筆していました。

以前も書きましたが、この書籍はこれは本当に過去にないくらいしんどかったです。
この本を書き始めるまでに業務でも半年ほどScalaを使っていたのですが(メイン言語というわけではないですが)、それでも書きながら調べることも多かったですし、説明も難しくなりすぎないよう、かつ誤解のないよう細心の注意を払いました。ライブラリやフレームワークのバージョンアップについていくのも大変でした。
本は書いてしまうと自分で読み返すことはあまりなかったりするのですが、Scala逆引きレシピはいまだに自分でScalaのコードを書くときに参照することがあります。Scalaの入門書ではなく実践で使える本、というコンセプトで書いたのですが、その目的はとりあえず達成できたと言えそうです。
あと、JJUGのナイトセミナーで久々に講演させていただく機会があり、昨年出した「現場で使えるJavaライブラリ」を題材にお話しさせていただきました。

執筆関連では今年もIDE連載を隔週ペースで継続させていただいたほか(今年は一度も休載がありませんでした!)、現在は某書籍の改訂作業を行っています。…行っているのですが、最近は本業が死ぬほど忙しいこともあって作業が滞っています。ちゃんと出せるかな…。心配です。

お仕事関連

前半はお仕事で某OSSのドキュメントの和訳などをやったりしていました。まとまった分量の文章を翻訳するのは初めて(でもないか、Clickのドキュメントの翻訳とかもやってたし)だったのですが、書籍の翻訳などはこれよりも遥かに多くの量を訳さなければならないわけで、翻訳の大変さがよくわかりました。ManningのPlay for ScalaやAkka in Actionなんかを翻訳できたらいいな、なんて思っていたのですが、無謀だと思いましたw
後半は、Scala逆引きレシピの執筆後、本格的にお仕事でのScala(Play2 + ScalaQuery)を使用した開発プロジェクトがスタートしました。これはまだ現在進行形なのですが、実際にそこそこの規模の開発をScalaでやってみて、Scalaのメリットやデメリットを実感できましたし、課題も見えてきています。いろいろハマってしまい予想外に時間を取られてしまった部分もありますが、まあJavaも昔はそんな感じでしたし、最初は仕方ないですね。
いまのところ一番の課題はコンパイルの遅さですね。Playだから余計に遅いというのもあるのですが、開発モードでの動作確認が苦痛なほど遅かったです。IDEツール周りは無ければ無いでなんとかなりますが、コンパイルは避けて通れないですからね。ScalaIDE for Eclipseも以前と比べると最近のバージョンは随分安定していますが、それでもプロジェクトが大きくなるとインクリメンタルビルドが遅すぎて使い物にならない感じです。

OSS関連

今年も仕事と執筆に大半の時間を取られてしまい、OSS活動はあまりできませんでしたが、仕事で必要だったこともあり、Scala関係のツールやライブラリをいくつか作りました。

それ以外にもplay2-war-pluginには何度かフィードバックさせていただきました。
AmaterasでもいままでSourceForge.netやSourceForge.jpSubversionリポジトリを使っていたのですが、本格的にScalaをやりはじめたこともあって今年になってからGithubを積極的に使うようになりました。まだEclipseプラグインSubversionに残っているものが多いですが、今後Githubに移行していきたいところです。

まとめ

とりあえず今年はScalaの年だったな、という感じです。ただ、まだScalaをちゃんと使いこなせているとは言えないので、来年も引き続き修行したいと思います。それと実際にScalaを仕事で使ってみて感じた課題を解決するための努力ができるといいなと思っています。
ちなみに来年3月にScala Conference 2013というイベントが開催される予定です。普段は引きこもりなのでこういうイベントに参加することはほとんどないのですが、今回はわけあって参加させていただく予定です。Typesafe社の方も来日されるとのことで楽しみにしています。
今年は一年通して尋常ではない忙しさで体力的にも精神的にも非常にしんどかったです。とりあえず3月までは激務が確定しているのですが、そのあとは少しまったりしたいものです。