トップ «前の日記(2011年08月22日) 最新 次の日記(2011年08月24日)» 編集

KeN's GNU/Linux Diary
... 料理とDebianと雑多な記録


2011年08月23日

_ [review] Rails3レシピブック 190の技

Rails3レシピブック 190の技
高橋 征義/松田 明/諸橋 恭介
ソフトバンククリエイティブ
¥ 3,129

発刊からそれなりに経過してしまったけれども、せっかく制作協力させていただいた(編集・DTP)ので、ご紹介。

すっかりWebフレームワークとしての定番としての地位を築いた感のあるRuby on Rails。巷にはすでに多数のRails書籍が刊行されている中で、本書は一体どのような差別化を図っているのだろうか。

本書はレシピ集である。順序立ててサンプルアプリケーションを作りながら学んでいくというスタイルの入門書とは異なり、ある程度の基本操作は教示はするものの、主となるのはRailsを最前線で使用あるいはRails自体の開発に参加している著者たちの知識と経験から蓄積されたTipsにある。

実際、入門書1冊だけでRailsを理解するのは難しいように思う。ステップを踏んでアプリケーションを作っていくのは書いたとおりには進んでいけるものの、そこから自分自身の新たなアプリケーションを作ろうとすると、「こういうことをする方法は本には書いていなかったのだけど、どうしよう?」と困惑することになる。

そこで本書の出番である。本書だけでRailsを理解しようとするのは困難だが、何かの入門書をこなした上で読んでみると、Railsの世界がぐっと身近に感じられ、そして新たな力の解放に驚きと喜びを覚えるのだ。

また、本書は(現時点では)唯一、最新のRails 3.1に対応している単行本である。 Railsの開発速度は速い。先端では常に開発が続けられ、新たな機能が次々と追加されている。同時に、古い時代遅れな機能が削除されたり、まったく別の書式を使うようになったりするなど、プログラマはもとより、出版社泣かせの技術と言える。 本書ではRailsのアクティブ開発者で先端を追い続けている松田さんが著者陣に加わったことで、ギリギリまでRails開発最先端に追従できるよう修正が加えられ、世界最速でのRails 3.1対応書籍となった(その後の開発でちょっと変わっちゃった項目もある、らしいけれども)。 来たるRails 3.1時代にも恐れることなく、本書が役に立つはずだ。

RubyKaigi 2011内特設ジュンク堂での先行発売の注目も高く、直接制作にかかわった本書と『7つの言語 7つの世界』、一部協力した『アジャイルサムライ』と、高々と積み上がっていたのがいずれも完売したのは、感動であった(購入された皆様、ありがとうございます!)。

著者陣も編集・DTP陣も大変な制作作業であったが、なんとか無事に7月のRubyKaigi合わせで見本販売にこぎつけ、この様子を見られて本当に良かったと思う。ジュンク堂のトークセッションも盛況。

いつものようにReVIEWで記述していたことと組版システムの改良もあって、「Rails3.1対応で原稿来ないと編集・DTPを始められませんよ…でも終わりは決まっているけど ><」とか、「レシピ数が190だったはずが189になっていますよ? どこかに1つ増やさないといけませんよ?」とか、「初校→再校→念校で大幅に変えますよ?」とかいった普通なら絶対に無茶という制作進行も、大きな事故なく遂げることができた(実質何日で制作していたことになったのかは考えたくないけど……)。

ただ、レシピのようにページ制約(白部分をなるべく埋めて必要に応じていろいろツメる)のある書籍体裁と、ReVIEW+組み直しというイテレーション制作フローとの相性については考慮の余地があるという振り返りは、今後考えていく必要がありそうだ。

_ [review] 7つの言語 7つの世界

7つの言語 7つの世界
Bruce A. Tate/まつもとゆきひろ/田和 勝
オーム社
¥ 3,360

先の『Rails3レシピブック』と併記しているのは偶然ではない…… 本書も、RubyKaigi 2011での発表に合わせて制作協力した1冊。

「キツイわー、イベント合わせで2冊同時制作はキツイわー」と地獄のミサワ化しそうだが、本書の編集作業はかなり大変だった。査読の方々にはいくら感謝してもしきれない。

7つの言語——Ruby、Io、Prolog、Scala、Erlang、Clojure、Haskell。歴史ある言語もあれば新進気鋭の言語もあり、その中で共通するのは「尖ってる」こと(Rubyは最近すっかり丸くなっている感もあるが、監訳のまつもとさんが本書を機にまた新たなアイデアを考えられるかもしれない)。これらの言語のとりわけ注目すべき性質を、著者Bruce Tate(『JavaからRubyへ』の著者だ!)が実際に使って会得し、紹介するという極めて意欲的なチャレンジの成果が、本書である。

本書は決して言語の入門書ではない。著者の試行錯誤には各言語のエキスパートが見れば奇妙で間違ったやり方に見えるものもあるだろう(特にHaskellerには)。

しかし、本書の目的は、読者が何か新たなことを学ぶという姿勢を身につけ、さまざまなプログラミングパラダイムを教養として次世代のパラダイムシフトに恐れることなく立ち向かえるような心構えを持つことにある。

無論、単なる退屈な言語説明で終わるわけがない。Tate氏は実際に言語の開発者たちにインタビューし、開発の背景や、言語の弱点、もし昔に戻れたらどう実装し直す? といったことまで立ち入って、生の声を届けてくれる。各章は映画をモチーフに構成され、味わいのあるエッセイ仕立てになっている。Rubyは「メリー・ポピンズ」、Prologは「レインマン」、Scalaは「シザーハンズ」、といった具合だ。

ユーモアあふれる文章を楽しみながら、驚くべき言語世界を知るのは、とても素敵な体験になるだろう。

……冒頭で書いたように、この制作はすごく大変だった。オーム社のアジャイル制作システムで、コミット数は900越え。

まず、7つの言語のうち自分が何とか意味を咀嚼できるのはRubyくらいで、後は「Debianにパッケージがあったのでちょっと触ってみたことがある」という程度に過ぎないのがいくつか、Ioに至っては「ナニソレ?」という感じで、コードの検証をするものの、それが正しいのかどうかよくわからない。査読者の方々にいろいろなアドバイスを頂いたり、他書を引いたりでようやく1章1章を進めていく状態だった。

そして、技巧的な英文。映画のエッセンスや、著者流のユーモア、英語文化、と諸々が混じり合い、まったく解釈できない……。そもそも翻訳の田和さんですら悩まれたところなのだから、英語赤点の自分にできるわけがないヨネー。このあたりも査読者やまつもとさんが活躍。

とにもかくにも、この素敵な本を翻訳してくださった田和さん、ブラッシュアップや技術的ツッコミを多数くださった査読者の方々、帰国早々に怒涛のチケット潰しをいただいた監訳のまつもとさん、そして、超絶編集と「え、ここからRubyKaigiに間に合っちゃうの?」という記録的な印刷所入稿を達成したオーム社の方々に、深く感謝。いい本ですよ。

Bruce Tateのもう1冊はこちら。

JavaからRubyへ ―マネージャのための実践移行ガイド
Bruce A. Tate/角谷 信太郎
オライリー・ジャパン
¥ 2,310

_ [cooking] 棒々鶏

残っていたきゅうりを一気に消費。なかなか良い味になった。