🔰 初めての人へ

Railsチュートリアルへようこそ!本サイトの目的は、皆さんにWebサービス開発で必要になる基礎知識を学んでもらうことです。本サイトで学んだことは、Webサービス開発者としての仕事を探したり、フリーランスとしてのキャリアを始めたり、自分のWebサービスで起業する場面などで役立ちます。既に開発の経験があれば、より短期間でWebサービス開発の流れを掴めるでしょう。

本サイトでは汎用性の高いスキルの習得を優先しています。今後他のプログラミング言語やフレームワークを学ぶ予定の人も、ここで学んだWebサービス開発の基本が役立つように仕上げています。

本サイトは『Ruby on Rails』を中心に様々なコンテンツをご用意しています。これはWebサービス開発の基本を学ぶ上で、これ以上ふさわしいフレームワークは無いと考えているからです。

Railsの実績

Ruby on Rails(略称『Rails』)は、プログラミング言語『Ruby 』で書かれたフリーかつオープンソースのWeb開発フレームワークです。

Railsは本格的なWebサービスを開発するツールとして急速に有名になり、GitHubAirbnbDisneyHuluSoundCloudShopifyイギリス政府などで採用され、また日本国内でもCookpadnotefreeeマネーフォワードYAMAPCrowdWorksProgateQiitaなどのサービスで採用されています。2021年にはRailsを使い続けるGitLabが上場し(時価総額: 約1.2兆円)、Rails 募集』で検索すれば凄まじい数のページがヒットします。

Webサービス開発にはRails以外にも多くの選択肢がありますが、Railsのアプローチは豪快かつ強力で、幅広い場面で使えます。初めてWebサービスを開発する人であっても標準機能だけで作れるだけでなく、リリースしたWebサービスが大きく成功したときの拡張性も兼ね備えています。また、シングルページアプリケーション(SPA)やモバイルアプリと組み合わせて柔軟に開発したい場面でも、Railsは素晴らしいバックエンドを提供できます。

加えて、RailsにはPHPやNode.jsのフレームワークにも影響を与えた設計哲学があります。現在も毎年のように新しいフレームワークが公開され、多くの開発者が設計について様々な議論を交わしていますが、Railsの作者であるDHH(David Heinemeier Hansson)は設計について次のようにコメントしています。

Railsが登場した当初から現在に至るまで、さまざまな場所でフレームワークに関する議論が続いていますが、Railsが大切にしている設計哲学は今も残り続けています。すなわち、プログラミングの慣習をパターン化し、不要な選択肢を外し、最適なデフォルト設定を提供することが、生産性を劇的に向上させるのです。

リリースから15年以上生き残り続けているRailsの一貫した設計哲学のおかげもあって、本チュートリアルで学べるWebサービス開発の基本は2014年の第3版からほとんど変わらずに安定し続けています。つまり皆さんが本チュートリアルで学ぶことは、今後も当分古びることなく役に立つと言えるでしょう。

そしてRailsは今も絶え間なく進化を繰り返しています。たとえばRails 6では、メールのルーティングリッチテキスト機能に加えて、並列テスト複数データベースのサポートといった高度な機能も新たに導入されました。“scalable by default” というYouTube動画 (英語) では、GitHub社のエンジニアであるEileen M. Uchitelleさんによって『アプリがどれほど大きく成長してもRailsはスケールできる』と解説されています。

さらに、画期的な進化を遂げたRails 7ではHotwireTurboなどの新技術が統合されたことで、複雑なSPA(シングルページアプリケーション)と対照的に、快適なユーザーエクスペリエンスを提供するのに必要なほとんどの機能をRails 7でとてもシンプルに実現できるようになりました。詳しくは「Railsの技: “プログレッシブエンハンスメント”でHotwire的思考を身につける」の翻訳記事が参考になります。

✅ 参考: Rails 7 はさらに良くなったよ、というツイート

これは実際にRailsで運用されているWebサービスからも明らかでしょう。共同開発プラットフォームとして絶大な人気を誇るGitHubには安心して寄りかかれる高い安定性があり、オンラインストア構築(EC)の分野で大成功を収めたShopifyは今なお成長し続けています。そしてこのようなRailsで成功を収めた大企業がコミュニティに還元し、2022年も進化し続けているという点は私たちにとっても大きなメリットです。

Railsは、2004年に1人のWebエンジニアが仕事の合間に手掛けたことから始まったとは思えない素晴らしい出来です。当時Railsを選ぶことは最先端でありリスクも伴う選択でしたが、今ではそうした苦労なしにRailsを選べます。

Railsは数々の事例で実証された生産性の高い機能を揃え、有用なコミュニティによって支えられています。Railsは、現在も本格的なWebサービス開発にふさわしい魅力的なフレームワークなのです。

原著者から,日本の皆さまへ

まつもとゆきひろ (Matz) 氏のいる日本の方々にも Rails Tutorial を届けられて嬉しいです。ここ数年間で Matz や日本の Ruby 開発者の方々とお会いしましたが、皆さんの技術的な才覚と親切さはいつも私に感銘を与えてくれます。

また、安川氏や八田氏を始めとする多くの関係者によって、本書が日本にも届けられたことを光栄に思います。私の賛同を得て電子書籍版なども提供しており、その収益はこの活動を支えていきます。もしあなたが日本の読者であれば、ぜひ本書を手に取ってみてください!

by Michael Hartl

Railsチュートリアルの歩き方 −
まずは全体像を把握しよう

『まずは全体像を把握したい』という方向けに動画とスライドを用意しました!必要な場面でご活用ください。

学習ロードマップ −
あなたに最適な学び方はどれ?

よくある学習の流れをまとめたロードマップもあります。『この流れが正解』といったものはありませんが、自分に合った学習計画を立てる場面などでご活用ください。

Rails 7 対応の解説動画は2022年内にリリースされる予定です。

☝️ 図中に記載されている各種サービスの概要は、次の通りです。

  • Progate

    対話的に学べるオンラインのプログラミング学習サービスです。初心者向けのコンテンツが特に充実しており、初めてプログラミングをする方にオススメです。『Progate Journey』でプログラミング学習の全体像を把握することもできます。
  • Railsチュートリアル実践入門シリーズ

    Railsチュートリアルを進めて『難しい!』と感じた方を対象とした補足コンテンツです。『基礎力を高めたい』『まずは基本を押さえたい』という方にオススメです。
  • RailsチュートリアルWebテキスト

    WebpackやGitHubにも対応した最新のコンテンツです。『理解がうまく進まない』『もっと早く学びたい』といった場合は、スライドと実演動画で学べるRailsチュートリアル解説動画がオススメです。
  • Railsチュートリアル解説動画 + トレーニング

    イラストと実演で効率的に学べる解説動画で、すばやく復習したい人にオススメです。2022年から回答付き問題集「トレーニング」も同梱され、70問以上の問題を通して各章の理解度もチェックできます。「コードは動いたけど理解できたか不安」という人に特にオススメです。
  • 質問対応サポート付き解説動画【提供: ShareWis】

    現役Rubyエンジニアのサポート付きで学べる、解説動画の質問対応付きサービスです。後半の章ほど難しくなっていきますが、サポートを受けながらしっかり学ぶことができます。
  • コミュニティサポート付き解説動画【提供: TechCommit】

    コミュニティ型の学習支援サービスです。独学での学習が不安な方にオススメです。(【Railsチュートリアルコラボ】Rails学習支援追加パックでお申し込みください。)
  • Ruby on Railsガイド

    トピック毎に体系化された、1,600ページを超えるRailsの大型リファレンスです。Railsチュートリアルを完走し、プロダクト開発の実践に入った方々を対象として、各機能の詳しい使い方を解説する辞書型サービスです。『もっと生産的に開発したい』という方向けにProプランTeamプラン電子書籍版も提供しています。
  • 読み物ガイド

    Railsチュートリアル完走者を対象とした『読み物ガイド』も用意しています。『完走後ってどうしたらいいの?』とお悩みの場面でお役に立てば嬉しいです 😌💖

上記の他、YouTubeチャンネルnoteマガジンもあります。『Ruby/Rails学習者の統計データ』や『3ヶ月でWebサービスを開発した話』、『医者からエンジニアになった話』などを公開しているので、ぜひご購読ください!📺✅