「Railsレシピブック」と"手になじむ"ということ

すでにこの日記でもお伝えしましたとおり、Railsレシピブック 183の技が出版されて二週間ほどが経ちました。私のまわりでも購入いただいた方が結構いまして、おおよそ好評をいただいています。ありがたいことです。

明日配信予定のオブジェクト倶楽部メルマガでも、id:ursmが書評を書いてくれてます。込めた思いを汲んでくれ、著者の一人としてなかなか嬉しい書評になっています*1のでお楽しみに。未購読の方もこの機会にぜひsubscribeしてくださいw

ということで私自身もだいぶ長めの書籍紹介をしてみたいと思います。購入を迷っている方の一助になれば幸いです。
RubyKaigi2008の会場でも販売があるかと思いますので、どうぞよろしくお願いします。
この本の執筆中に心がけたのは、『読者の方々にとってRailsが"手になじむ"フレームワークになる』にはどうすればいいか、ということでした。

"手になじむ"という感覚はうまく表現できないんですが、たとえば私にとってはRubyVimがそうであるように、「何かあってもなんとかなりそう」「とはいえそうひどいことはないだろう」と信用できる状態ですかね*2。もちろん、ある程度突っ込んで使えば個別具体的な疑問が出たり、いままで知らなかった壁に突き当たったりはするんですが、それとはまた別のレイヤで、信用して使える状態と言えばいいでしょうか。
長く使っているうちに私にとってのRailsもそんな感じになって来まして、(細かいところでハマることはありつつも)基本的にはうまくやれるパートナーみたいに感じています。いやほんとよくできてて頼りになるフレームワークですよ。もちろんハマることもありますけど。

執筆中は、一人でも多くの読者の方にそんな空気を感じていただけるよう、いろいろと頑張ったつもりです。

たとえば HasManyThroughAssoction < AssociationProxy。たとえば form_for。たとえば map.resources。などなど、Railsには使いこなすと便利だけど、最初はなかなか難しい仕組みがたくさんあります。
私自身も最初は「こんなんわかんねー」という気になりましたが、Rails勉強会@東京の皆さんと意見交換したり、実際の仕事で使ったりしながらだんだんとこれらの仕組みを安心して駆使できるようになってきました。そんな仕組みがいろいろあるのがRailsですが、その中でも特に実際のアプリケーションで役立ちそうなものをセレクトして載せたつもりです。

もちろん"手になじむ"というのが目標ですので、機能の使い方だけでなく「どんなふうに使えるのか」「なんでこんなものがあるのか」というのを盛り込んでます。たとえば『131. コントローラに複数のリソースへのルーティングを定義する』ではmap.resoucesが大量に生成するルーティングを、(a):format付きのもの、(b)リソースをCRUDするためのもの、(c)Webブラウザ経由でのアクセスのためのもの、という三つの観点に分けて説明してみました。これは実際に私がいろいろ悩んでたどり着いた覚え方だったりします。このあたり、私がいろいろ悩んで理解した獣道を読者の方々にとっての舗装道路とすべく頑張ったつもりなんですが、うまく伝わればいいな、と思ってます。

まとめます。

この本は、Railsをすでに使ってる人、使おうと思っている人にとって、Railsが"手になじむ"ようになってもらいたいと思って執筆しました。帯の「Rails上手になるための定番テクニック」は私自身も気に入ってるフレーズです。この本をお手に取ってくださった一人でも多くの方が「Railsって気持ちいいな、たのしいな」と感じ、「レールに乗せらちゃった」から「自分の意志でレールに乗ってるよ!!」となる一助になれば幸いです。

なお、冒頭にも書いた通りRubyKaigi2008の会場でもジュンク堂書店池袋本店様による書籍販売が行われる予定で、(たぶん)Railsレシピブックもそこで入手できるかと思います。
会期中は声をかけてくださればサインなどもさせていただきますので(ニーズはあるのかしら?)どうぞよろしくお願いします。

Railsレシピブック 183の技

Railsレシピブック 183の技

*1:検閲とかはしてませんよ。念のため

*2:好きな言語/エディタに置き換えてくださってかまいません