at posts/single.html

いろんな意味で新しい Rails 本: Rails of Ruby on Rails

昨年の 1981s でお会いしたのりおさんから、Rails of Ruby on Railsという本を頂戴した(ありがとうございます)。 まず驚くのは、技術本っぽくないデザインと紙質。 黒地に白い文字の組み合わせは、まるで ROCKIN'ON JAPAN を読んでいるみたい。

Rails of Ruby on Rails

構成

本の構成はチュートリアル形式になっている。 まず Ruby と Rails の基礎を説明し、環境を構築して、それからブログとショッピングサイトの作成を通じて Rails の機能を説明している。 特徴的なのは、開発環境に「NetBeans」を使用していること。 そのため、インストール時を除いては、すべて NetBeans 上で作業できるようになっている。

チュートリアルのブログとショッピングサイトは、実際に Rails で稼働している「LOCUS. AND WONDERS」というサイトを元にしているらしく、デザインを含めてサンプルのためのサンプルという感じがしないのがいい。 ユーザ認証、バリーデーションの日本語対応、フィード (Atom) 配信、画像のアップロード、タグクラウド、メール送信など、本当に必要となる機能が簡単に実装されていく様は、読んでいて楽しくなってくる。

後半の3分の1は、 Rails で運営しているサイト(音楽系)の事例として、インタビューを交えながら携帯電話対応やインクリメンタルサーチなどの Tips を説明している。 こちらも事例に基づいているので、具体的にニーズが見えて分かりやすい。

純粋なプログラマ「でない」人向けの本

Amazon レビューでも指摘されているように、黒地に白という構成や光沢のある紙質はやや読みやすさに欠ける。 また、チュートリアル形式のため情報の網羅性に欠けるので、この1冊だけで Rails を「使いこなす」ようになるのは難しい。 でも、それにはちゃんと理由があった。

サブタイトルが「FOR WEB CREATORS」となっており、帯にも「HTMLからCSS、その先のステップへ」と書かれているように、この本は純粋なプログラマ向けの本じゃない。 以下、「はじめに」より引用。

自分もこんなWebアプリケーションを作りたい!と思ったことはありませんか?ただ、それと同時にWebアプリケーションは大変そうだと思って、アイデアを形にすることなく諦めていた方も多いと思います。

そこでRuby on Railsです。Ruby on Railsは、Webアプリケーション開発に必要な機能が巧みにパッケージングされたフレームワークであり、その名の通りレールに乗っているかのように、目指すWebアプリケーションの形まで運んでくれる頼もしい味方です。

これを読んで、「Rails on Ruby on Rails」というタイトルの意味を理解できた。 Rails のためのレール。 つまり、Rails の機能を網羅的に把握するんじゃなくて、「Railsでこんなことができるよ」という概要を把握するための本だと。 これまでだと、自分で HTML + CSS で Web サイトを作ってた人が一歩先に進みたいと思った場合は PHP が有力だったけど、「Rails も便利ですよ」という提案をしているんだと思う。 本書のチュートリアルを読んでいて、「あ、こんなに簡単にできちゃんだ」って思ったもん。

PHP と比較しての Rails のネックは運用環境の構築だよなぁ…と思いながら読み進めていたら、その点もしっかりカバーされていて、 Rails のホスティングサービスである Heroku (参考: はてなブックマーク) が紹介されていた。 NetBeans の GUI 環境を使ってローカルで開発し、 Heroku に展開して運用するという形。 日本でもこういうホスティングサービスが増えると面白いな。 Apache で動く Rails 環境の Passenger (mod_rails) など、実現の可能性は高まっていると思うんだけどね。

技術書として読むと物足りなく感じるけど、雑誌を読むくらいの軽い気持ちで読んで Rails の面白さを体感するのに適しているんじゃないかな*1。 気になったところがあれば、 Rails レシピブックAgile本などの多数出版されている Rails 本を併用して理解を深めることもできる訳だしね。 こういう本が出るくらいには Rails の層も厚くなってきているんだと思った。

おまけ: NetBeans と JRuby について

この本では NetBeans 6.01 を使っているけど、それに触発されて NetBeans をインストールしてみた。 せっかくなので開発中の NetBeans 6.1 を入れてみたんだけど、どうもデフォルトでは Rails を動かすために JRuby1.1 が使われるようになってるみたい。 しかも、 war ファイルを作って Java のアプリケーションサーバにデプロイすることもできそう。 NetBeans も JRuby も着々と完成度が高くなってるな…。

関連する日記