プログラミングの準備

【初心者向け】Rubyを独学で学ぶ3ステップを紹介

はじめまして、ITエンジニアのカワノです。

Rubyを独学で勉強したいけれど、難しいのではないか?どんな本やサイトを参考にすればいいのか?就職・転職につなげるにはどうすればいい?このような疑問をお持ちの方も多いのではないでしょうか。この記事では現役エンジニアである筆者がそんな疑問にお答えしていきます。

Rubyは難しい?プログラミング初心者でも大丈夫?

Ruby はプログラミング初心者でも学習に取り組みやすく、簡単なものを作るところまでならば比較的簡単にたどり着けるプログラミング言語として知られています。コンパイル不要ですぐに動かせるインタプリタ言語であることや、自然言語に近い感覚で読み書きできる直感的な文法がその理由です。

そのため、Ruby のプロを目指しているわけではなく、「プログラミングに触れてみたい」「趣味など目的のものが作れれば十分」という場合にはとてもハードルが低く、プログラミング初心者の方におすすめです

しかし、その習得の容易さからWebエンジニア業界では非常に供給が高く、競争率が高い状態です。深い仕様や概念を理解していることはもちろん、新しいトレンドにも敏感でないとプロの現場で活躍することは難しいでしょう。

とはいえ、新卒採用・第二新卒採用などの時点では高い技術レベルは求められないことが大半ですので、これに該当する方はそこまで身構える必要はありません。基本的な文法やWebフレームワークの扱い方、オブジェクト指向の概念をざっくりと理解することを目標にしましょう。

どのくらい学習する必要がある?

プログラミングには向き不向きがあるため一概にいうことはできませんが、以下の表をどのくらいの学習期間でどのくらいのことができるようになるのかの目安にしてください。

できるようになること 学習期間目安
Lv.1 掲示板アプリなど小規模なツールやWebアプリケーションの作成 1 ~ 3ヶ月
Lv.2 大規模Webアプリケーションの修正や機能追加 ( インターン・新卒レベル ) 半年 ~ 1年
Lv.3 大規模なアプリケーション開発・大規模リファクタリング ( プロレベル ) 2年以上

Rubyを独学で学ぶ方法3ステップを紹介

Rubyを独学で学ぶ方法3ステップを紹介

それでは具体的に Ruby を独学で学ぶ方法を大きく3ステップに分けて説明していきます。

ステップ1. 学習する環境を整えよう

まずは学習する環境を整えましょう。

Ruby をインストールしよう

まずは何よりもはじめに Ruby をお手元のパソコンで使えるようにする必要があります。MacOS と Windows で手順が異なりますのでそれぞれ説明していきます。

MacOS の場合

MacOS の場合はデフォルトで Ruby がインストールされているはずです。ターミナルを開いて `ruby -v` と打ち込むと現在インストールされている Ruby のバージョンを確認できます。バージョンなどは気にせずとにかく基本的な文法だけ知りたいという方は、特に何もせず次のエディタの準備に移っても構いません。しかし、バージョンが古いとプログラミングサイトや入門書で紹介されている記法が使えないこともあるのでできるだけアップデートしましょう

最新バージョンにアップデートするにはターミナルを開いて Homebrewrbenv をインストールしましょう。どちらもインストールできたら、rbenv を使って最新の Ruby をインストールします。2020年5月21日現在の Ruby の最新バージョンは 2.7.1 です。なお、参考にするサイトや書籍の都合で特定のバージョンをインストールしたい場合も rbenv を使ってインストールすることができます。ターミナルで `ruby -v` と打ち込み、想定通りのバージョンが表示されれば成功です。

Windows の場合

Windows の場合は MacOS と違い、デフォルトで Ruby がインストールされていません。自分で Ruby の実行環境と Ruby をインストールする必要があります。しかし、最初に念のため自分のパソコンに Ruby がインストールされていないことをチェックしましょう。コマンドプロンプトを立ち上げて `ruby -v` と入力します。コマンドが見つからない旨のメッセージが表示されれば Ruby がインストールされていない状態です。

ここまで確認できたら、次に RubyInstaller をインストールしましょう。その名の通り、Ruby をインストールするためのツールです。インストールができたら RubyInstaller を起動し、画面に沿って進みましょう。

最後まで進めると黒い画面が出てきます。ここで Ruby 開発に便利な MSYS2 もインストールしましょう。1, 2, 3 という選択肢が出てきますが1から順にすべて選択しましょう。すべてを終えたら Enter キーを押して終了です。

正しくインストールできたかを確認するために、コマンドプロンプトを立ち上げて `ruby -v` と入力しましょう。インストールしたバージョンが表示されたら成功です。

エディタを準備しよう

Ruby をインストールできたら、次は実際に Ruby を記述するためのテキストエディタを準備しましょう。Ruby はその気になればメモ帳などの特別な機能のないテキストエディタでも記述することができますが、プログラミングのための機能が揃ったテキストエディタの方が格段に書きやすいです。

筆者がおすすめするのは atom というプログラマのためのテキストエディタと RubyMine という Ruby プログラマのためのテキストエディタです。

atom は GitHub という開発プラットフォームを開発・運営しているGitHub社が作った、プログラマーのためのテキストエディタです。Ruby に特化しているわけではありませんが、様々なパッケージをインストールすることによる高い拡張性が特徴なので、これを駆使して Ruby 開発をとても楽にすることができます。また、他のプログラミング言語を使用したくなった時も同じようにパッケージをインストールするだけで対応できることも利点です。これらすべての機能を無料で使用することができます。

RubyMine はプログラミング全般に必要な機能に加え、Ruby での開発に特化した機能を備えたテキストエディタです。JetBrains 社という会社が開発しているのですが、この会社は Ruby だけでなく様々なプログラミング言語に特化したエディタを数多く販売しており、実績は折り紙付きです。いつでも痒いところまでしっかり手の届く最新の機能を提供してくれます。月額1030円、年額プランでは10,300円で購入できます ( 2020年5月21日現在 )。なお、無料体験や学生向けプランもありますのでチェックしてみてください。

ステップ2. Ruby の基本的な文法をマスターしよう

学習環境が整ったら早速 Ruby を書いてみましょう。まずはとにかくたくさん書くことが大事です。以下に紹介するようなプログラミング学習サイトに沿って、できるだけ多くのプログラムを作成しましょう。

ここで大事なのは、説明だけ読んで「簡単だ」と思っても実際に自分で書いてみることです。実際に書いてみるとあまりよく理解できていなかった部分に気づいたり、自分がケアレスミスをしやすい箇所があることに気づくことができます。また、繰り返し自分で書くことで記法を自分のものにすることができ、空で書くこともできるようになってきます。

おすすめのプログラミング学習サイト

Ruby の基本的な文法をマスターする際に基本的な筆者がおすすめするのはドットインストールの Ruby 入門コースprogate の Ruby コースです。

ドットインストールは3分以内の動画を1講義として、すべての講義を受講することで一つの技術を習得できるように構成されているプログライング学習サイトです。1講義3分という短さと動画という授業形態から挫折しにくいため、隙間時間に学習したい方や独学に自信がない方にもおすすめです。

progate は要点を簡潔にまとめたスライドショー形式のプログラミング学習サイトです。要点を噛み砕いた解説が非常に丁寧でプログラミング初心者にもおすすめです。ただし、1講義にかかる時間が1時間以上なため、まとまった時間が取れない方や独学に自信がない方はドットインストールの方が向いているかもしれません。

この時点では本は買わなくてもいい?

学習といえばWebサイトよりも本を買ったほうがより効率よくできるはずだ、という意見をお持ちの方も多いと思います。基本的には、筆者もその一人です。

しかし、Ruby の基本的な文法に限ってはネット上の教材だけでも十分でしょう。なぜなら Ruby はプログラミング初心者でもとっつきやすい簡易な記法で書けるので習得が容易ですし、そんな Ruby を学ぶ人が後を絶たないためネット上の教材も非常に優れているからです。

それでも Ruby 関連の書籍を購入して学習したいという方は、後述の転職で武器にできる Ruby スキルを身につけるには?の項で紹介している「プロを目指す人のためのRuby入門 言語仕様からテスト駆動開発・デバッグ技法まで」をおすすめします。

ステップ3. Ruby on Rails を使って Web アプリケーションを作ろう

Ruby の基本的な文法について習得できたら、最後のステップであるWebフレームワーク Ruby on Rails を用いたWebアプリケーション作りに進みましょう。Ruby on Rails に関してはドットインストールの Ruby on Rails 5入門コースprogate の Ruby on Rails5 コースの他に Ruby on Rails チュートリアルというサイトをおすすめします。

この Ruby on Rails チュートリアルでは Ruby on Rails の他に git や heroku といったWebエンジニアに必須のスキルを扱っていますので、将来Webエンジニアになることを視野に入れている方は是非挑戦してみましょう。難易度が高いと感じたら、ドットインストールか progate のコースを終えてから挑戦しましょう。Ruby on Rails チュートリアルはドットインストールや progate と比べてボリュームがあるため学習により時間を割く必要がありますが、それだけの価値がある内容になっています。

この辺りから学習が少し難しくなってきますので、1つのコースを受講し終えても技術を自分のものにできた感覚がないという場合もあると思います。その場合は、他のコースを受講すると復習になりますし、別の角度から技術について理解できるかもしれません。なお、趣味などで学習をしており将来プロを目指す予定のない方はドットインストールと progate の学習だけで十分でしょう。

就職・転職で武器にできる Ruby スキルを身につけるには?

就職・転職で武器にできる Ruby スキルを身につけるには?

すでに述べた通り、Ruby エンジニアは供給が高い状態なので転職に関しては競争率が高く、現場未経験ともなれば非常に困難です。しかし Ruby 以外のオブジェクト指向プログラミング言語での仕事の経験や Ruby on Rails と特性が似通ったWebフレームワークを使った仕事の経験があれば Ruby 自体の現場を未経験でも転職に成功するケースは多くあります。

未経験では難しいと書きましたが、一部のベンチャー企業では現場未経験の第二新卒採用も積極的です。新卒・第二新卒であれば上記の独学3ステップを終えている程度のスキルがあれば比較的有利に就職活動を進められます。インターン経験もあればさらに良いでしょう。

それ以外の転職の場合、現場未経験でも転職を成功させるには自分で様々なアプリケーションを作って公開するしかありません。それを企業にアピールしましょう。しかし、ただやみくもにアプリケーションを作ってもあまり意味はありません。以下に紹介する技術を駆使して企業にスキルをアピールできるようにいましょう。

この本を熟読しよう

Ruby エンジニアを目指す人ならば必読の本があります。「プロを目指す人のためのRuby入門 言語仕様からテスト駆動開発・デバッグ技法まで」という本です。この本は初心者でも理解しやすいように非常に分かりやすく説明されていながら、順を追って書かれている事項について習得していくとおのずとプロレベルまでたどり着ける良書です。

Ruby 業界でとても有名な本ですし、作者である伊藤淳一さんご本人も界隈の有名人です。彼は積極的に技術関連の情報発信をしているので、ブログやSNSもチェックしておくと良いでしょう。この本を読破している、加えて伊藤淳一さんが発信する情報をウォッチしているという事実は就職・転職活動はもちろん、就職後の業務を行うときも役立つはずです。

Ruby on Rails を習得しよう

Ruby を独学で学ぶ方法の3ステップ目でも Ruby on Rails について学習したと思いますが、より実践的なスキルを身につけるために「現場で使える Ruby on Rails 5速習実践ガイド」という本でさらに学習しましょう。この本はタイトルの通り現場で使えるような実践的な内容を扱っています。平易な文章で初心者が現場で躓きやすい箇所にについて丁寧に解説されていることが特徴です。

RSpec を使いこなそう

「プロを目指す人のためのRuby入門 言語仕様からテスト駆動開発・デバッグ技法まで」を読んだ時にテストについて学んだと思いますが、ここで学んだだけで終えることなく、アプリケーション開発の際にはできるだけテストを書くようにしましょう。

現場ではテストをしっかりと書ける人は重宝されます。面倒に感じることも多いと思いますがここでしっかりと書ける能力を身につけておくと就職・転職活動だけでなく、業務でも非常に役立ちます

オブジェクト指向を身につけよう

Ruby はオブジェクト指向型言語です。そのため、現場ではオブジェクト指向への理解があることが前提となっています。オブジェクト指向への理解がなければ、就職・転職活動におけるコーディングテストや面接で苦戦することが予想されますし、万一採用されたとしても実際の業務でとても苦労するでしょう

そこでおすすめなのが「オブジェクト指向設計実践ガイド ~Rubyでわかる 進化しつづける柔軟なアプリケーションの育て方」という本です。オブジェクト指向関連の本は Java で説明されていることが多いですが、この本は Ruby で説明されています。もちろん Java に抵抗がないならば他の本でも構いませんが、Ruby だけを学習した方にとって Java は少し読みにくい可能性があります。特別な理由がなければこの本で学習するのが良いでしょう。

基本的な RDBMS, SQL の知識を得よう

Ruby on Rails が初めて学習したWebアプリケーションである方は MySQLPostgresql などの RDBMS やそれを操作する SQL の知識が曖昧なことがあります。一人で Ruby on Rails を使ってWebアプリケーションを開発するだけならば、それらの知識は必要にならないことが多いからです。

しかし、現場ではそうはいきません。アプリケーションコードを書くときは問題ないかもしれませんが、何か問題が起こった時の調査やテーブル設計を行うときなど、必ず RDBMS, SQL の知識が必要になる時がきます。その時のために最低限の基礎知識は押さえておきましょう。

20代向けおすすめプログラミングスクール
30代未経験エンジニア転職におすすめのプログラミングスクール