🔰 初めての人へ

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

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

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

Railsのさまざまな利点

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

Railsは本格的なWebサービスを開発するツールとして急速に有名になり、GitHubAirbnbSoundCloudDisneyHuluShopifyといった世界的に有名な企業はもちろん、日本国内でもnoteクックパッドProgateQiitaなどのサービスで採用されています。実際、Rails 募集』で検索すると、機械学習系スタートアップも含め、凄まじい数のページがヒットします。

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

Railsの大きなメリットの1つとして、『次々と置き換えられる新ツール』問題と程よい距離を保っている点が挙げられます。特にこれからWebサービス開発を学ぶ人たちにとっては、数ヶ月かけて学んだツールが半年もしないうちに別の新しいツールに置き換えられてしまうといった場面を気にされる方もいるのではないでしょうか。Railsの作者であるDHH (David Heinemeier Hansson) さんも次のようにコメントしています。

かつて、目移りするような複雑な技術をアレコレ売り歩いてたJ2EEというものがありましたが、当時と驚くほどよく似た不満を昨今のJavaScript界隈で見かけます。Railsが登場した当初から現在に至るまで、さまざまな場所でフレームワークに関する議論が続いていますが、Railsが大切にしている設計哲学は今も残り続けています。すなわち、プログラミングの慣習をパターン化し、不要な選択肢を外し、最適なデフォルト設定を提供することが、生産性を劇的に向上させるのです。

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

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

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

実際、共同開発プラットフォームとして絶大な人気を誇る GitHub は安心して寄りかかれる高い安定性があり、オンラインストア構築 (EC) の分野で大成功を収めた Shopify は今なお成長し続けています。また、Railsの新しいバージョンがリリースされると、そのような大きな成功を収めた大企業によって即座にテストされるという点も、私たちにとっては大きなメリットです。

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

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

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

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

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

by Michael Hartl

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

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

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

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

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

  • Progate

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

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

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

    実演付きの解説動画で学べる一押しのコンテンツです。イラストと実演で早く効率的に学べるので、すばやく学習を完了させたい人に特にオススメです。
  • 質問対応サポート付き解説動画【提供: ShareWis】

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

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

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

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

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