Ruby on Rails の作者 David Heinemeier氏のインタビュー

David Heinemeier氏のインタビューを読んでいて、Ruby on Railsへの興味がむくむくと湧いてきた。

O'Reilly Network: Ruby on Rails: An Interview with David Heinemeier Hansson

インタビューによると、Ruby on Rails以前の37signalsでの開発には、ずっとPHPを使っていたそう。PHPでのWEBアプリケーション開発で、再利用可能なフレームワークをつくろうとずっと努力してきたが、いまひとつ楽しめなかった。
そして、これからずっとWEBアプリケーションの開発に携わっていくのならば、自分のツールとして何を選ぶのか、 "love it or leave it"の判断のタイミングがやってきた、と。

O'Reilly Network: Ruby on Rails: An Interview with David Heinemeier Hansson

I realize that this makes PHP sound bad, but it's really not about that. I'm grateful for PHP. It got me started with programming because of its incredible immediacy. It served me very well for a long time. I just arrived at a place that was outside what I would consider the sweet spot for that language. And Ruby proved to be exactly what I needed to get into the sweet spot again.

こう書くとPHPが悪く聞こえてしまうけれど、決してそういうわけではないんだ。PHPには満足している。PHPの「すぐに始められる」素晴らしさで、自分はプログラミングを始めることができた。ずっと長い間、すばらしく役にたってくれた。単純に、その言語のスイートスポットだと思っていた場所の外に、自分がたどり着いたと気づいたんだ。そしてRubyは、今の自分のスイートスポットにちょうどあうものを提供してくれている。

中略

DHH: Stay below the infrastructure surface. Don't let business logic creep in the back door. It's not the responsibility of Rails to deal with content management, access control lists, forums, chats, or what have you. We're about the general structures that make sense of any kind of application.

So we won't ever become Zope. Or OpenACS. Or any of the other frameworks that have dipped into business logic waters and been consumed by it.

We're all about making it easier and easier to do what most people do most of the time in any type of application. For example, we're working on preparing a new sub-project called SwitchTower for the next version of Rails. It solves the problem of deploying applications to production servers. That's a problem that most every application needs to deal with, but it doesn't complicate the development process by making the default stuff any harder. It's just there, patiently waiting until that's your problem.

インフラのレベルより常に下にいなければいけない。ビジネスロジッックをバックドアに忍び寄らせてはだめだ。コンテント・マネジメントやアクセス・コントロール・リスト、フォーラムやチャット、そういったものはRailsが対応する範囲ではない。我々がつくっているのは、どのようなアプリケーションにも対応可能な、汎用的な構造なんだ。

だからZopeやOpenACSなど、ビジネスロジッックに浸かって、それに取り込まれてしまったフレームワークのような方向性にはならないだろう。

我々が作ろうとしているのは、多くの人が、ほとんどの時間をかけて作ろうとする、あらゆる種類のアプリケーションを簡単にしようとしている。例えば、SwitchTowerというサブ・プロジェクトを、Railsの次のバージョンで用意している。それは、アプリケーションをプロダクション環境にデプロイする問題を、解決してくれるはず。この問題は、どのアプリケーションでも対処しなくてはいけないことだし、開発プロセスの最初では、それほど複雑でもない。それは単純にそこにあって、問題になるのを待っているんだ。

自分の場合、特に週末プログラミンで、次はどんなことをしようかな〜と考えてた最中なので、こんな風にかかれると興味をそそられるなあ。その後、インストールしてみたので関連記事で。
関連記事
関係サイト