u16suzuの blog

日々学んだことのメモブログです。

RubyフレームワークSinatra の作者 Blake Mizerany氏のインタビューを翻訳してみた。

RubyフレームワークSinatra の作者である Blake Mizerany 氏のインタビュー記事を見つけたので、翻訳してみました。タイトルは "How do I learn and master Sinatra?" 直訳すれば「Sinatra をマスターする勉強方法」です。




今回はRL blog 連載"Sinatraをマスターする方法" の最終回です。この連載は、有名なSinatra開発者の方々にRubyビギナーがどのように Sinatra を学習していけばよいかをインタビューします。

Satish>> Blake Mizerany, 自己紹介していただけますか? あなたのバックグラウンドに関して。

Blake>> 私は Heroku のマッドサイエンティストの一人です。Sinatra プロジェクトを2007年の9月に始めました。使えなかったり、使えそうなものが出来上がったりしました。Ruby, Erlang 時々 C で書きました。

Satish>> Sinatra を学び始める前に知っておいた方が良い事柄はありますか?

Blake>> 大きいフレームワークがあなたに教えたものを捨てるように用意してください、そして、それらがあなたから隠すものを学ぶように用意してください。難しいことじゃないよね。

Satish>> Ruby on Rails を学ぶ前に Sinatra を学ぶべきなのですか?何故?

Blake>> 絶対にそうだね。まず始めに大きなフレームワークを学ぶとき、君はアイディア、制限、そして魔法の過多に取り入れられてしまう。一番ひどいのは、ひとつのパターンに当てはめて考えてしまうこと。Rails の場合では、それはMVCです。 MVC は始めからほとんどのウェブアプリケーションに全く合いません。これから学び始めるのは苦行です。決してこれから始めないでください。100万円のゴルフクラブセットを買ったから、ゴルフで勝てるとは限らない。;)

Satish>> Sinatraのどんな特徴が素晴らしいとお考えですか?

Blake>> Sinatra の素晴らしい所は

1. コミュニティ。私はメーリングリスト、IRCで沢山の素晴らしい人たちに出会いました。彼らと一緒に今Herokuで働いてます。
彼らはいつも手助けをしてくれる。彼らはいつでもひょいと現れるんだ。
2. halt と pass READMEを見てね :)
3. Sinatra::Base

Satish>> どのようにSinatraの勉強を始めるべきでしょうか?

Blake>> READMEを読んで。 始めるのに必要な全てのものはREADMEに書いてあるよ。そして、Herokuを使ってdeployする。その後にRackを学んで、Rackがどのように動くのかを理解する。基本的なアプリケーションをRackで書いてみて。そして,ミドルウェアのシンプルで小さいコードを書いてみて。

Satish>> Sinatraを学ぶ初心者が注意すべきところは??

Blake>> これは CRUD に君を巻き込む MVC フレームワークではないんだ。彼らのようなMVCフレームワークが必要な方法を採らないでほしい。あなたはSinatraMVCフレームワークのように使うことが出来ます。しかし、MVCといった抽象概念が必要になるまで、Sinatraをシンプルに使っていくことが良いでしょう。

Satish>> Sinatraのオフィシャルドキュメントで初心者は十分学べますか?追加や修正が必要な部分はないですか?

Blake>> はい。十分です。あのREADMEは素晴らしいね。

Satish>> Sequel, DataMapper, ActiveRecord の中でSinatraと一緒に使うならばどれがお勧めですか?その理由は?

Blake>> どれでも。今はあまりないけど、SQLデータベースを使うときは、Sequelを使うね。なぜならメモリに負担がかからないし、あとは、依存性かな(http://github.com/rtomayko/sinatra-sequel/tree/master 参照) CRUD的なことをするときはActiveRecord を使う。この場合、ActiveRecord は素晴らしいね。

Satish>> Sinatraを学ぶとき、Rackの理解は重要ですか?何故?Rackのどの部分が重要要ですか?

Blake>> Sinatraを学ぶのにRackの理解は必要でないでしょう。Sinatra以上のことをやろうとするなら、必要でしょう。RackはSinatraの基礎です。

Satish>> Sinatraを使用する際、スキルを磨くときにどうすべきですか?

Blake>> ソースコードを読んでください。行数は1200行にも満たないです。沢山の人々の貢献のおかげで、ソースコードはとても素晴らしい例だよ。小さく、綺麗で、素敵なRubyコードの例が詰まっています。

Satish>> Sinatraのスキルを磨くために、初心者はどんな種類のプロジェクトに参加すべきですか?

Blake>> JSON のweb サービスを開発するといいよ。他にも小さなblogシステム、url短縮サービスなんていいと思う。これらのどんなものでも君は試してみることになるだろう。そして、君はSinatragの速さの秘密がわかるでしょう。

ありがとうBlake 疑問・質問がある場合は、blogのコメントにポストして下さい。Blakeが喜んでお答えします。

元の記事はこちらです。
http://rubylearning.com/blog/2009/08/11/blake-mizerany-how-do-i-learn-and-master-sinatra/