こんにちは、フリーランスエンジニアのCOMです。僕の詳しいプロフィールはこちら。
エンジニアになりたい人・フリーランスに興味がある人に向けてLINEマガジンの配信を開始しました。
先日こんなツイートをしました。
たしかに案件数だけで見ればJavaやPHPの方が多いのに
なぜ初心者にRubyを教えるかというと
簡単にアプリを作れてプログラミングの楽しさを知れるから
内容の細かい理解より先に楽しさを知れば挫折する可能性は低くなる
僕は初めの頃触れたのがJavaで危うくプログラミングが嫌いになりそうだった
— COM@FREELANCE (@com_y_0) March 11, 2020
こちらにかなり反響があったので、今回はこの内容について深掘りして行きたいと思います。
最近プログラミングの需要の増加と共に、プログラミングスクールが沢山作られました。
僕もプログラミングスクールの講師をやる傍らで、フリーランスエンジニア友達の有人さんとオリジナルの教材を作ったりしてます。
教材の詳細はこちら。
興味ある方はどうぞ。
僕らの教材もそうですが、多くのプログラミングスクールではRubyとそのフレームワークであるRuby on Rails(通常Rails)を使っています。
これはなぜでしょうか?
実はコレには色んな理由があるんです。
と言うわけで今回は、「なぜ多くのプログラミングスクールではRubyを教えるのか?」について詳しく解説していきたいと思います。
今エンジニアになりたくてプログラミングスクールを探している人、エンジニアになりたいけど言語に迷ってる人必見です。
では、いきましょう!
なぜ多くのプログラミングスクールではRubyを教えるのか?【理由を解説】
それにはたくさんの理由があるので、順番に解説していきます。
簡単に動くアプリを作れてプログラミングの楽しさを知れるから

プログラミングが楽しいって思うときはどんな時ですか?
僕は、なんでもいいから自分の作ったものが動く瞬間です。
ぶっちゃけなんで動いてるとか、その他細かいことはあまり気になりません。
RubyとそのフレームワークであるRiby on Rails(以降Rails)を使えば、細かい部分を理解してなくてもなんとなく動くアプリが作れます。
例えば、会員登録機能・写真投稿機能のあるInstagramのようなものや、投稿機能・いいね機能がついたTwitterのようなものまで。
そういったアプリが簡単に作れるって楽しくないですか?
僕は、もともとFラン文系大学で勉強なんかして来なかったので、パソコンの構造とか、二進数とか座学は苦手だったしできればやりたくなかったです。
なので、こういう考えの人はRubyが向いてると思います。
一旦アプリを作ってみて、楽しいと感じ、もっと細かい部分も知りたいなと思えば、その後勉強すればいいんです。
スマブラでいうところのまずカービィ(使いやすいキャラ)使ってゲームの楽しさを知った後に
リンクやサムス(使うのが難しいキャラ)使って見ましょう!
と言うのと同じです。
初心者にいきなりリンク(使うのが難しいキャラ)を使った方がいいよってオススメしたら
おそらく多くの人がスマブラを楽しいと思える前にやめてしまいます。笑
僕自身、駆け出しの頃会社の指示でJavaをやらされた時本当にわけがわからず、完全にわからないことがわからない状態になりました。
会社のお金で外部のJavaプログラミングスクールにも行きましたが、ダメでした。
その後、Rubyを勉強したらかなりわかりやすくプログラミングが楽しいと思えるようにました。
取り組む順番って大事ですね。
書き方がシンプルで初学者もわかりやすい

Rubyは他のプログラミング言語と比べてソースコードの書き方がシンプル(文字数が少ない)です。
たとえば、友達にLINEでメッセージを送る時に書かないといけない言葉が
「日本人の日本語のあいさつで5文字それはこんにちは」
実際に送られるメッセージ↓
とかだったら面倒くさくないですか?
もしそれが
「日本語こんにちは」実際に送られるメッセージ↓
だったらどうですか?
ちょっと楽じゃありませんか?
前者がJavaで後者がRubyです。
実際のコードにするとこうなります。
Rubyで「こんにちは」を出力する時↓
puts "こんにちは"
Javaで「こんにちは」を出力する時↓
class Sample {
public static void main (String[] args) {
System.out.println("こんにちは");
}
}
こういう違いがいたるところにあって、初心者に優しいのもRubyのいいところですね。
また、Rubyは日本人が開発した言語ということもあって書いてあるソースコードからどんな処理をしたいのかが推測しやすいです
英語に似ています。
とりあえず、この2つをみてもらえばわかると思います。
Rubyで「こんにちは」を「5回」出力する時↓
5.times {|i| puts i}
なんとなく5回出力したいんだなというのが「5.times」の文字から想像できます。
Javaで「こんにちは」を「5回」出力する時↓
for (int i = 1; i <= 5; i++) {
System.out.println(i);
Rubyと比べてJavaのコードをみてみましょう。
「int」というよくわからない単語や、「++」という謎の式があって何がしたいのかぱっと思いつきにくいです。
こういった読みやすさもRubyを多くのスクールで初心者に教えている理由の一つですね。
初学者を集めやすい

何故Ruby(Rails)を教えている業者が多いかというと、一番の要因は初学者の集客がしやすいから。
Railsがかなり流行ったときにプログラミングスクールなどがブログで集客に力を入れた為、ド素人の認知がWebアプリイコールRailsになっていたりする。別にRubyからでもいいしJavaでも何でもいいよ! https://t.co/4XgNd1rp1n
— 井上慎也@IT学習コミュニティTechCommit (@ino_dev) March 13, 2020
こちらのツイートにもあるとおり、初学者を集めやすいというのも理由の一つです。
Rubyが初学者に優しい言語ということで、Rubyを教えるプログラミングスクールが増えて、
それらのプログラミングスクールが広告・集客に力を入れ始めました。
それを気に、アフィリエイトの記事が増えその結果初学者向けの「言語=Ruby」という認識が広がったというものあります。
Ruby自体はいい言語なんですが、エンジニアでもなんでもない人が過剰にRubyをオススメするせいで
アフィリエイターに利用されてる言語みたいな認識になってしまってちょっと残念な気もします。
僕もRubyのプログラミングスクールへのアフィリエイトもやってるのであまり強くいえないですが・・・。
とはいえ、Ruby自体は初学者に優しく僕自身もRubyをやってきて本当によかったと思ってるのでこれからも「Rubyはいいぞ」って言い続けます。

批判意見には注意しましょう

Twitterやブログを見ていると、RubyよりPHPだ!とかJavaの方が案件数多いからそっちの方がいいぞ!とか言ってる人を見かけます。
PHPはWeb系言語としてRubyよりも案件数多いし、リモートワークなどの自由な働き方も可能です。
Javaも案件数Rubyより多く、やっておけばまず仕事に困ることはないでしょう。
ただ、こう言った意見を鵜呑みにしてRubyは案件少ないし自社開発に入る難易度が高いからやめた方がいいって決断をするのはあまり賢いとは思いません。
そういったRubyを否定してる人ってPHPやjavaのスクールをやってたりします。
要は集客。
意味もなく否定する人なんていません。
みんな何かしら自分に利益がある行動や言動をします。(たまにただ否定だけするバカもいますが)
どの言語もいいところと悪いところがあるので、そこは自分自身でどうなりたいかどんな働き方をしたいかできめるといいとでしょう。
僕はRubyをオススメします

初学者に対して場合によるとかどっちでもいいっていう回答はとても意味のないものだと思ってるので、僕なりの結論を書きます
理由は以下の通り↓
- コミュニティが活発で勉強会などが頻繁
- ライブラリが豊富で開発が簡単
- 日本語情報が豊富で検索しやすい
- Ruby on Railsがある
- フルリモート勤務や週4勤務も可能
ざっとこんなもんですかね。
これ以上詳しく説明するとなるとは長くなってしまうので、こちらの記事に書いてます↓
https://comblog.net/2018/08/13/%e7%8f%be%e5%bd%b9%e3%82%a8%e3%83%b3%e3%82%b8%e3%83%8b%e3%82%a2%e3%81%8c%e8%aa%9e%e3%82%8bruby-rails%e3%82%92%e3%82%aa%e3%82%b9%e3%82%b9%e3%83%a1%e3%81%99%e3%82%8b%e7%90%86%e7%94%b1%e5%b0%86/
Ruby推してると
って人が出てきそう。
確かにお金稼ぎは大好きなので間違ってはいないですが。笑
というか、現役のRubyエンジニアがRuby進めなかったらその方がおかしいかと。
なぜ多くのプログラミングスクールではRubyを教えるのか?【理由を解説】〜まとめ〜

- 簡単に動くアプリを作れてプログラミングの楽しさを知れるから
- 書き方がシンプルで初学者もわかりやすい
- 初学者を集めやすい
Rubyを教えてるスクールが多いのも、Rubyが初学者に優しい言語だというのも事実です。
特に今までプログラミング触れてこなかった人こそ挫折する可能性は少しでも排除して
目標のために勉強をしてもらえたらと思います。
Rubyを習得できたら他の言語もできるようになりますしね。
大事なのは言語にこだわりすぎず、とりあえず勉強を始めることです。

今回も最後まで読んでくれてありがとうございました。
では、また!