Ruby入門を決めた人がするべきことやおすすめの学習サイトを紹介!
近年、プログラマーの活躍や2020年以降プログラミング学習が小学校でも必修化されたことなどからプログラミングへの注目がとても高まっています。
当記事では、そんなプログラミングで扱うプログラミング言語の中からRubyを取り上げ、その基本情報から入門者におすすめの本やサイトについても紹介していきます。
Rubyとは
まずはプログラミング言語Rubyの基本的な情報について紹介します。
開発者は日本人
Rubyとは、まつもとひろゆき氏(通称Matz)により開発されたオブジェクト指向スクリプト言語です。
オブジェクト指向とは、ソフトウェアの保守や再利用をしやすくすることを目的とした技術のことで、JavaやPythonなど一度は聞いたことある他のプログラミング言語もオブジェクト指向です。
スクリプト言語とは、プログラムの実行方式によって区分された言語のひとつです。プログラムは人間が書いたソースコード(命令)をコンピューターが理解できる機械語に変換してから実行されますが、その変換するタイミングによって大きく分けて、コンパイラ言語とスクリ言語の二つがあります。どちらの言語様式にも一長一短があり、初めてプログラミングを学ぶのであれば書いたコードが即時に実行されてかつ結果が自分で確かめられる「スクリプト言語」、特にRubyがおすすめです。
Rubyはどのように生まれ、世界へ羽ばたいていったのか?まつもとゆきひろさん講演会の全貌をレポート
Rubyでできること
Rubyは幅広い用途に適用できる汎用型プログラミング言語です。WebアプリケーションからWebサーバー、インテリジェントなグラフ作成ライブラリ、画像認識エンジン、スレッド化されたデーターベースサーバー、システムユーティリティまで、あらゆる分野で使用されています。
Rubyが使われている身近な例をあげたほうが分かりやすいかもしれません。具体的に「クックパッド」や「食べログ」、「グノシー(Gunosy)」など、一度は耳にしたことがあるWebサービスでRubyが使われています。
ここで知っておいてほしいことは、Rubyを勉強すれば、あなたが作りたいサービスをアプリケーションとして形にすることができるということです。
Ruby on Rails
プログラミング言語にはそれぞれ、開発をスムーズに行うためのフレームワークというものが存在しており、RubyにはRuby on RailsというWebアプリケーションフレームワークがあります。
そして、このフレームワークの存在がRubyが多くの人に親しまれ、初めてRubyを学ぶ人に楽しくコードを書くことを可能にしているのです。
現段階で知っておいてほしいことは、Rubyを学ぶならRuby on Railsも一緒に学ぶといいということです。
【初心者向け】Ruby on Railsとは?学習する3つのステップを解説macとwindows どちらが適している?
Rubyで何か開発をするとき、まずは開発環境を整えなければなりません。
もしこれから新しくパソコンを買ってRubyを学ぼうとしているなら、Macをおすすめします。なぜなら、Macには元々Rubyがインストールされているからです。買ったその日からすぐにRubyを書き始めることができます。
もちろん、WindowsでもRubyを使って開発できます。そのためには適切な開発環境の構築が必要です。
未経験でも確実にプログラミングスキルを身につけられる!
【DMM WEBCAMP】では、専属コーチが卒業まで伴走します!
✔短期間で効率的にプログラミングスキルを身につけたい
✔プログラミングを独学で進めていくのが不安
✔家での時間を有効に使ってスキルアップがしたい
といった方におすすめです!
\実践的なスキルが身に付くカリキュラム/
具体的にどんなことができるのか
ここまではプログラミング言語Rubyの基本的な情報について解説してきましたが、続いてそのRubyを用いるとどんなことができるのかについて説明していきます。
Webアプリケーション
RubyはWebアプリケーションの開発でよく使われます。
先ほど述べたRuby on Railsは、開発者にWebアプリケーションのフレームワークとパワフルな開発ツールを提供します。現在、世界中の多くのWebアプリケーションがRuby on Railsで開発されています。
海外のサイトですが、実際にRuby on Railsを使って作られているサイトを見てみるとイメージが湧くと思います。着実に学んでいけば、同じようなサイトを作ることができます。以下で紹介する3つのサイトにはいずれもRuby on Railsが使われています。ぜひリンクをクリックして実際にサイトを見てみてください。
Airbnb(エアビーアンドビー)は、宿泊施設・民宿を貸し出す人向けのWebサイトです。
500px(ファイブハンドレッドピクセル) は、アマチュアかプロフェッショナルの人たちが自身の”作品”として写真をアップすることを目的とするSNSです。
Bleacher Report(ブリーチャーレポート) はアマチュアライター向けのスポーツ専門ブログ・プラットフォームです。
スクレイピング
Webサイトから情報を取得し、その情報を加工して新たな情報を生成することをWebスクレイピングといいます。
Rubyには簡単にスクレイピングができるライブラリ(ある特定の機能をまとめたもの)がインストールされています。これを使えば、日経平均株価や特定のハッシュタグのツイートを、ほんの10行程度のコードで簡単にスクレイピングすることができます。
スクレイピングとは?活用事例・メリット・デメリット・導入方法までわかりやすく解説
どんな人に向いているか
Rubyについての基本情報と何ができるかについて解説してきましたが、続いてどんな人がRubyを勉強、習得するのに向いているのかについて説明していきます。
プログラミング入門者
Rubyはこれからプログラミングを学ぶ入門者に向いています。
プログラミングを学ぶ上では英語が壁になることが極めて多いですが、Rubyは日本語のドキュメントや情報が豊富にあり、他の言語よりも日本人にとって学びやすい環境が整っているためです。
Webアプリケーションを作ってみたい人
プログラミングを始めたい理由が「Webアプリケーションを作ってみたいから」という人にはRubyがおすすめです。
先ほども述べましたが、Ruby on Railsというフレームワークを使うことで、Webアプリケーションの開発を簡単に行うことができるということが大きな理由です。また、Webアプリケーションの仕組みを学ぶ上で、Ruby on Railsは初心者にうってつけであることも理由のひとつです。
「"プログラマー"という職種に興味はあるけど、何から始めていいかわからない…」 そんな悩みを持つ方も、【DMM WEBCAMP】でなら徹底サポートで確実にプログラミングスキルを身につけることができます! ✔受講生の97%が未経験者! \未経験からプログラマーを目指す方は必見!/
✔一人一人に合わせた学習計画で進められるため、仕事や学校と両立できる!
✔未経験者のために開発された独自のカリキュラムを用意!
何から始めればいいのか
では、いよいよRubyを学習する、という段階になったときにどんな行動を起こせばいいのでしょうか。
Rubyに限りませんが、これからプログラミングを学ぼうと意気込んで、すぐに本屋さんでプログラミングの入門書を買いに行ってはいけません。インターネットには、プログラミング初心者のための無料で使用することのできる良質なサイトや動画がたくさんあります。まずは無料のサイトでRubyを始めましょう。
Rubyの学習サイト【無料編】
そこで、Rubyを始めて学習するにあたっておすすめすることのできる無料学習サイトを紹介します。
Progate
これからRubyの世界に足を踏み入れるなら、まずはProgateから始めるのがおすすめです。インターネットに接続できるパソコンがあれば、MacでもWindowsでも問題ありません。
Progateなら、ブラウザ上でコードを書いて簡単に実行ができるので、開発環境などの初心者が挫折するポイントをスキップして、プログラミングの基礎を楽しく学ぶことができます。
RubyやRuby on Railsだけでなく、HTMLやCSSなど他のプログラミング言語も基礎編なら無料で学ぶことができます。
CODEPREP
次におすすめするのはCODEPREPです。
CODEPREPの特徴は、あらかじめある程度コードが書かれている状態から学習をスタートすることができる点で、最初は穴埋め形式でプログラミングを学習することができるためプログラミング学習のハードルを下げることができます。
こちらもProgate同様、Rubyの他にも11のプログラミング言語を学習することができます。
Rubyの学習サイト【有料編】
おすすめの無料学習サイトを紹介してきましたが、無料学習サイトで基礎レベルの学習を終えてしまった方や、もともとある程度プログラミングに関する知識がある方などには有料の学習サイトがおすすめです。
有料の学習サイトには無料の学習サイトにはないようなコンテンツが充実していたり、より詳しい内容について学ぶことができたりと、利用することで質の高い学習を行うことができます。
有料学習サイトについてもおすすめのものをひとつ紹介します。
Udemy
最初に無料の学習サイトProgateをおすすめしましたが、動画で学びたいという方にはUdemyの動画コンテンツをおすすめします。
ProgateではRubyの基礎編を無料で学ぶことができますが、Webアプリケーションを作れるようになるコースの受講は有料会員にならないと見られません(それでも1ヶ月1000円以内ですが)。
UdemyならRubyの基礎からRuby on RailsでWebアプリケーション開発を行うところまで一気に網羅することができます。スライドを見て概要を理解し、実際に課題に取り組みながらコードを書くことで知識の定着を図るハンズオン形式がProgateですが、Udemyでは講師がコードの解説をしながらアプリを作っていく動画形式の学習サイトです。初心者がつまずく環境構築も講師が丁寧に解説してくれ、学習していく上で分からないことは動画の講師にメールで直接聞くこともできます。
学習サイトでrubyの基礎を学んだ後は
Rubyを始めて学習する方の第一歩として無料・有料のwebサイトを紹介してきましたが、その第一歩を超えた後にするべき学習について解説していきます。
Ruby on Rails チュートリアル
学習サイトである程度基礎を習得した後は、Ruby on Rails チュートリアルをやってみましょう。
Webアプリケーションの開発から公開までを実際に手を動かしながら学んでいくことができます。もちろんオンライン版は無料です。Ruby on Railsチュートリアルを最後まで終わらせることができれば、Rails中級者になれます。
オリジナルのアプリを作ってみよう
Railsチュートリアルを終わらせることができたなら、自分オリジナルのアプリケーションを作ってみましょう。
学んだことを形にしアウトプットしていくことで、さらにレベルアップできます。そして、作っていく上で「こんなことをしたいけれど、どうやってやるのかな?」「こんなこともできるのかな?」などとまだまだ知らないことが多くあることに気づくと思います。そのタイミングこそ、何かを学び、知識を吸収するチャンスです。知識は使って初めて役に立つのです。
つまずいた時は
当然ですが、Rubyに限らずプログラミングを学習していく上で壁にぶち当たってしまったり、わからない箇所が出てつまずいてしまうことがどこかのタイミングで必ず訪れるはずです。
そんな時はどうすればいいのか紹介していきます。
調べる力
RubyやRuby on Rails を学んでいく上で分からないことに出会ったら、まずは検索してみるのがいいでしょう。
調べる力はプログラミングをマスターする上で最も必要なスキルです。学習していく上で一字一句、文法やコードの書き方を完璧に覚える必要はありません。なんとなく見たことあるな、やったことあるな、といった感覚を増やしていきましょう。忘れてしまっても構いません。どんどん調べて、どんどん忘れていきましょう。
Qiita
Qiita(キータ)はプログラマーのための情報共有サービスです。プログラミングに関するヒント、ノウハウ、メモを簡単に記録&公開することができます。
初心者から熟練のエンジニアまで、幅広いレベルの人が利用しているサービスですので、オリジナルのアプリを作るときに参考になるアイデアやノウハウをきっと得られるでしょう。
teratail
teratail (テラテイル)はプログラミングに特化したQ&Aサイトです。実現したい機能や作業中に発生したエラーについて質問すると、他のエンジニアから回答を得られます。
質問の仕方が分からない初心者のために、質問のテンプレートを利用できるので、実装中に起きたエラーを自力で解決できそうにないときは思い切って質問してみましょう。プログラマは教えたがりな人が多い(私の偏見かもしれませんが)ので、きっと明確なフィードバックが得られると思います。
まとめ
Rubyに限りませんが、プログラミングを習得することには根気と時間が必要です。
プログラミングを学習する環境が以前よりも整ってきているとはいえ、1人で黙々と学習していくのは大変なことです。ですので、ぜひプログラミングを一緒に学ぶ仲間を見つけましょう。1人で挫折しそうになった時も励ましあえる仲間がいればきっと乗り越えることができます。学んだことを誰かに説明し、教えることは、自分の理解を深めます。焦る必要はありません。何事もそうですが、ゆっくりでもいいから続けることが一番です。
最後になりましたが、ここまで読んでいただきありがとうございました。この記事が読者のRuby入門に際して、一助になれたら嬉しいです。