Ruby on Railsはどのように生まれ、発展してきたのか[前編]。作者DHH氏やコアチームが語る動画「Ruby on Rails: The Documentary」が公開

今回は「Ruby on Railsはどのように生まれ、発展してきたのか[前編]。作者DHH氏やコアチームが語る動画「Ruby on Rails: The Documentary」が公開」についてご紹介します。

関連ワード (回目、容易、年頃等) についても参考にしながら、ぜひ本記事について議論していってくださいね。

本記事は、Publickey様で掲載されている内容を参考にしておりますので、より詳しく内容を知りたい方は、ページ下の元記事リンクより参照ください。


最も有名なWebアプリケーションフレームワークの1つである「Ruby on Rails」は、もともと37signals社が社内向けに開発したフレームワークでした。

現在ではGitHubやShopifyなど大規模なWebサービスを支えるRuby on Railsも、登場初期には「スケールしない」という批判にさらされ、また競合となるフレームワークが登場するなどの経緯を経ています。

こうしたRuby on Railsのこれまでを、作者であるDavid Heinemeier Hansson(以下、DHH)氏や関係者が振り返る動画「Ruby on Rails: The Documentaryが、昨年(2023年)11月に公開されました。

Ruby on Railsがどのような経緯で開発され、発展してきたのか。DHH氏やコアチームの発言によって紹介されています。この記事では、その内容をかいつまんで紹介していきましょう。

Ruby on Rails: The Documentary

37Signals共同創業者兼CEO Jason Fried氏。

Ruby on Railsの作者であるDHH氏との最初の出会いを振り返ります。

fig

「1999年か2000年頃、私は37signalsというWebデザイン企業を経営していました。2人のビジネスパートナーとWebデザインを受注していたのです」(Fried氏)

Fried氏は本業とは別に再度プロジェクトとしてオンライン書籍データベースの開発に取り組んでいました。開発はPHPで行っていたものの、Fried氏はプログラミングでつまづきます。

当時はまだStackOverflowのような技術的な質問に答えてくれる掲示板などなかった時代。Fried氏はブログに「誰かこの問題を解決する方法をご存じですか?」と書き込みます。

するとデンマークからメールが届きます。メールを書いてきたのがDHH氏でした。

fig

「私は(37signals社の)Signal vs. Noiseというブログを以前から熱心にフォローしていました」とDHH氏。

「ブログで彼の質問を見て、私は『おお、この答えを知っているぞ!』と思いました。 彼への返事は、私が彼らのブログを読んで楽しんだり学んだりしてきたことへのお返しです。私は彼がPHPでやりたいと思っていたことについての説明を詳しく書きました」

その後もFried氏とDHH氏のプログラミングのやり取りは続きます。そしてある日、Fried氏は全体のコードをDHH氏に見せたところ、DHH氏が「これはひどい、最初からやり直したほうがいい、私にやらせてください」と発言。

Fried氏とDHH氏のパートナーシップは、こうして始まったと説明されました。

プログラミングの学習に2度失敗したDHH氏

DHH氏は、初めてコンピューターを手に入れたのは1985年、6歳のときだったと語ります。

fig

「プログラミングに初めて触れたのは、ビデオゲームのプログラムを雑誌から入力したときでした。しかし入力が下手だったのか、プログラムのうち数本しか動かせませんでした。

10歳か11歳、12歳くらいのときにもう一度プログラミングを学ぼうとしました。そのとき使ったのはEasy AMOS と呼ばれるプログラミング環境でしたが、私にとっては簡単ではなく、私はまたしてもプログラミングの学習に失敗しました」

「1995年にHTMLと出会って、何かを実際に作れるチャンスがあると思えるようになり、そして1999 年に私は他のプログラマと一緒にPHPでゲームのWebサイトの制作を始めて、初めてうまくできました。

当時私は20歳で、プログラミングを学ぶのは3回目ですが、ようやく理解できたのです」

DHH氏の報酬はコンピュータ機器

Fried氏とDHH氏のパートナーシップが始まった後、二人はシカゴで実際に会い、いくつかのクライアント向けのプロジェクトに取り組むことになりますが、忙しくなってきたことでプロジェクトをきちんと管理するツールが必要になります。

fig

そこで、そのためのプロジェクト管理ツールを自分たちで作ろうとしたのです。2003年に開発が始まる「Basecamp」がそれでした。Fried氏はBasecamp開発のためにDHH氏に報酬を払うことにします。

Fried氏。「当時の彼は『お金は要らない、ラップトップが欲しい、コンピューター機器が欲しい』という感じでした。というのも、デンマークに住む彼にとって最新のApple製品の入手は容易ではなかったようです。

そこで彼が米国に来るたびに、これはおそらく違法なのですが、私は彼にラップトップを与えたり、彼がその時に必要としていたものを何でも与えました。それはBasecampに関する報酬でした」

fig

Rubyとの出会い

そしてここでDHH氏はRubyと出会うことになります。

「私はちょうどその年の初めにMartin Fowlerの著作を通じてRubyを知りました。また、Dave Thomas はプログラミング雑誌でプログラミングの概念をRubyで説明していて、これは本当に興味深いプログラミング言語だと思いました。

まず第一に、私はRubyをそれまで知りませんでしたが、その時点で私はWebに何年も取り組んでいて非常に興味をそそられました。またRubyは日本から登場したことも、とても興味深かったです。

Rubyのコードはまるで疑似コードのように見えました。つまりプログラミングの概念を説明しようとするときに、正確に正しい構文ではなく、英語に近い概念的なコードを書いてしまうことがあります。Rubyはまさにそう見えました。そしてそれは本当に興味深いことでした」

「Rubyの好きなところは、最小限のあいまいさでHello WorldをWebに公開できるPHPの即時性と、非常に洗練され、よく考えられた一貫したオブジェクト指向プログラム言語が組み合わさっているところなのです」

Ruby on Railsの誕生

こうしてDHH氏はBasecampの開発でRubyを試すことにしたのです。

「まず簡単なことから始めました。2週間の猶予期間を自分に与え、RubyでレンダリングされたHTMLを画面に表示できるかどうか、データベースと通信できるかどうか、これらを簡単に実現できるかどうかを試したのです」

これがRailsの始まりでした。

「そこから6カ月から7か月かけて私たちはBasecampを開発し、開発の過程で私はRailsを生み出しました。あらじめ何らかのデザインがあったわけではなく、大きなWebフレームワークが欲しかったから作ったのです」

2004年2月にBasecampがリリースされた後、DHH氏は6カ月かけてRuby on Railsの内容やドキュメントを精査し、完成させた上でリリースしましました。

そしてRuby on Railsが話題になると、DHH氏は新たな悩みを持つようになります。それはRuby on Railsに対してさまざまな要求が寄せられるようになったことです。

「自分が作ったものがこれほどの盛り上がりを見せているのを見るのはとても嬉しかったです。一方で、私はRailsに込めたビジョンの完全性を非常に大切にしていました。

Railsに興味を持つ人が増えると、Railsの方向性を指示しようとする人も出てきます。そうなると物事はコントロールを失い、他人からの貢献に喜んで時間を費やしているうちに、『ノー』ということが難しくなります。誰かに対して『ノー』と言ってしまうと、意見が衝突してしまうのです。

しかし私はRailsに望まない多くの意見に『ノー』と言い続けました。

カナダで行われた、あるカンファレンスでの有名なスライドがこれです」

fig

「私はRailsに取り組みたいからそうしているのであって、問題を解決し、フレームワークの整合性を守っていきます」

「オープンソースは商業的な関係ではなく、何をすべきか、Railsが取るべき方向性を私に指示することはできないのです。判断は私自身がしていきます。もちろん、フィードバックは受け付けています。

そしてRailsが強存在するのは、何千人ものコントリビュータのおかげなのです。そうした人々には、私は躊躇せず『イエス』と答えていました」

≫後編に続く。後編ではRailsコアチームに所属していた開発者が、これまでの経緯を振り返ります。

COMMENTS


Recommended

TITLE
CATEGORY
DATE
「Raspberry Pi 5」を使ってみた–気になるパフォーマンスや発熱をチェック
IT関連
2023-12-03 02:05
炭素排出をなくし、地球に少し休ませる技術に投資するEIPの新ファンド
IT関連
2022-01-28 09:26
「Slack AI」、日本語を含む多言語に対応–「Slack」全有料プランで提供
IT関連
2024-04-20 14:05
AIが雇用の意思決定に客観性をプラス–インフォア予測
IT関連
2021-01-19 13:54
Snowflake、2023年の国内ビジネス戦略–アプリ開発、人材育成など注力
IT関連
2023-06-01 23:30
アビームコンサルティング、従業員エクスペリエンス管理ソリューションを導入
IT関連
2023-02-04 04:57
セキュリティの新語「ASPM」とは–Snyk担当者が解説
IT関連
2023-08-08 17:46
LinkedInが独自のポッドキャストネットワークを開始
IT関連
2022-02-25 15:51
フードデリバリーのFavorを設立した2人が不動産賃貸のSunroom Rentalsで11.6億円を調達
その他
2021-02-25 06:09
発電所の煙突内にドローン 関西電力が新サービス
IT関連
2021-04-17 08:20
ソニー「α1」は“新世代の最高峰”を見せてくれた :荻窪圭のデジカメレビュープラス
くらテク
2021-01-29 07:52
首相官邸の公式ページにコロナワクチンの特設サイト Twitterの公式アカウントも開設
企業・業界動向
2021-01-23 16:01
フェズ、顧客像を可視化する新ツールを提供開始–unerryと業務提携
IT関連
2022-11-06 18:26
PS5の品不足は2022年も続くとCFO──Bloomberg報道
企業・業界動向
2021-05-12 02:46