なぜ初心者はRuby on Railsを学ぶべきか

Daisuke Ishii
Kiara Inc. Blog
Published in
7 min readSep 28, 2015

--

米国の記事より、10の理由をお伝えします

株式会社ジェニオの代表石井です。

パキスタン人オンライン家庭教師に教えてもらい、

Ruby on Railsを日々学習中です。

UpWork(旧oDesk)で時給$15で雇っていますが、とてもいい感じです。

本日はこちらの記事の翻訳をお伝えします。

プログラム初心者には、

どのプログラム言語が適しているだろう?

私はこういった質問をよく受けます:

”どの言語を学んだらいいの?”

もしあなたが全くの初心者だったら、

私はRuby on Railsを自信を持って薦めます。

この記事ではその10個の理由を述べます。

1.Ruby on RailsはWeb Application Frameworkである

RubyとRuby on Railsは違う物です。

Ruby on Railsは基本的にRubyで書かれたWeb Application(=Website)を、

とても速く作るためのショートカットのコレクションです。

Ruby on Railsの様なWeb Application Frameworkを、

Rubyの様なプログラム言語そのものを学ぶ前に学習するメリットは、

最初の段階で速く進歩することができる点です。

実際に動いて友人にシェアできるサイトが速く作れ、

実例を通して、

学んでいる事がやりたい事にどう活かせるのか理解できるのです。

2.世界で大成功しているWebsiteの多くはRuby on Railsで作られている

Basecamp、Airbnb、Bleacher Report、Fab.com、Scribd、Groupon、Gumroad、Hulu、Kickstarter、Pitchfork、Sendgrid、SoundCloud、Square、Yammer、Crunchbase、Slideshare、Funny or Die、Zendesk、GitHub、Shopify。

これらの例は全てRuby on Railsで作られています。

これ以上言わなくてもRuby on Railsの重要性はわかりますよね?

3.多くのStartup企業がRuby on Rails技術者を採用している

一般的に言うともっとも雇用需要が多い言語ではありません。

Java、PHP、Pythonなどの方が雇用需要があるかもしれません。

ただ、Startup雇用に限って言うと、

Ruby on Railsの良質なエンジニアはとても見つけにくいのです。

理由は次項。

4.Ruby on RailsはFull-Stackである

他の言語(HTML、CSS、Javascript、Python、SQL)と違い、

Ruby on Railsはフロントエンドとバックエンド両方カバーしています。

これはRuby on RailsエンジニアはWeb Applicationを丸ごと一人で作る事ができるという意味です。

つまり、バックエンドやフロントエンドを誰か他の人に手伝ってもらう必要が無いのです。

さらによい事は、Ruby on Railsを学ぶと、

HTML/CSS、Javascript、Rubyなどの言語も同時に学ぶ事になります。

その逆はないので、Ruby on Rails学習には意味があると思います。

5.Ruby on Railsはコミュニティが盛り上がっている

Ruby on Railsのコミュニティはもっとも盛り上がっている物の一つです。

最新技術をシェアするカンファレンスも無数にありますし、

毎日世界各都市でミートアップイベントが行われています。

オンラインフォーラムのStack Overflowも盛り上がっています。

ハッカソンに出ても、Ruby on Rails開発者は必ずいます。

つまり助けが必要な時は誰かが周りにいるのです。

6.Ruby on Railsは初心者にとってとっつきやすい

コミュニティが盛り上がっている事に加え、

Ruby on Railsの開発者たちは私の経験ではとてもフレンドリーです。

これはフレームワークが新しいので、

開発者は皆自分が初心者だった頃の記憶がはっきりしているのだと思います。

7.Ruby on RailsとRubyについての多数の良質なオンライン教材が出回っている

沢山あります。

Ruby on Rails Tutorial、Rails for Zombies、One Month Rails(僕が作りました!)、Treehouse、Lynda.com、Codecademy、Learn Ruby the Hard Way、Why’s(Poignant) Guide to Ruby、

もっともっとあります。

8.Rubyそのものに制約が少なく初心者向きである

Ruby on Railsのほとんどの部分はRubyで書かれています。

ですのでRubyの初心者に親しみやすい特徴は助けになるのです。

Javascriptや他の多くの言語と違い、

行をセミコロン(;)で終わらせる必要はありません。

Pythonや他の言語と違い、

行間やタブの違いは影響しません。

括弧()と中括弧{}の違いも影響しないのです!

Rubyはあなたが何を考えているか理解します。

それに加え、Rubyはとても読みやすいです。

これを見てください。

このちょっとしたコードの例は、

Odelay!を5回表示させなさい、

という読んだそのままを表しています。

同じ事をJavaで表現しようとすると:

Javaが初心者にはとても読みにくく理解しにくい事がわかります。

9.Ruby on Railsは知る必要のない部分の仕事を勝手にやってくれる

Ruby on Railsでは、

データベースを使うのに、

SQLを知っておく必要はありません。

これは素晴らしい事です。

ほぼ全ての場合、

Ruby on Railsはあなたが何か他の指定をしない限り、

あなたが何をしたいかという事を予想してくれます。

これは何を学ぶ予定かわかっていない初心者や、

始めたばかりでアプリケーションの細かい設定をいちいちカスタマイズしない初心者にとって、

とても簡単な仕組みです。

他の例としては、

Ruby on Railsは便利な方法で第三者のコードをキープしてくれ、

アップデートし続けてくれます。

また、Ruby on Railsは多くのセキュリティ対策を無料で実装でき、

SQLインジェクション(データベース改ざん攻撃)や、

クロスサイトスクリプティング(ネットワークを通じた攻撃方法)、

セッションハイジャック(通信乗っ取り)、

他にも多数のセキュリティ攻撃に対応しています。

他の言語ではこれらを自分でセットアップしなければなりません。

Ruby on Railsはサーバー側も保守してくれます。

10.Ruby on Railsは開発のベストプラクティスを教えてくれる

Ruby on Railsはどの様にサイトを構築すべきか、

という考えに基づいて作られており、

一般的に広く受け入れられている方法で構築させようとします。

少なくとも最初のうちはそうです。

RESTfulリソースや、MVCフレームワーク、テスト環境など、

様々な物が実装されています。

--

--