こんにちは、フリーランスエンジニアのCOMです。僕の詳しいプロフィールはこちら。
エンジニアになりたい人・フリーランスに興味がある人に向けてLINEマガジンの配信を開始しました。
他業種からエンジニアになって、今はRuby・Rails・Vue.js・AWSなどを使った現場で働いています。
これからエンジニアを目指す方にとって、初めの言語選びはとても重要。
初心者の方は特に最近人気のWeb系の言語、RubyとPHPで迷う場合が多いと思います。
プログラミング言語の良し悪しなんて、人による部分もあるしどこで使うかや、どんな働き方をしたいかによって変わってきます。
とはいえ、こういった質問に「場合による」という回答では質問相手の意図を全く汲み取れない人になってしまうのでしっかりとお答えします。
結論、「どちらを選んでも後悔することはないが、僕のオススメはRuby」です。
現役Rubyエンジニアでありプログラミングスクールの講師をしてる僕から見ても、Rubyはとてもいい言語だからです。
という訳で今回は「これから勉強するならRubyとPHPどっちがいいのか」というテーマで詳しく解説していきたいと思います。
言語選びに悩んでいる人必見です。
では、いきましょう。
これから勉強するならRubyとPHPどっちがいいのか【難易度・収入・将来性】
RubyとPHPの言語の特徴
言語がなぜたくさん存在するかというと、それぞれの言語によって特徴があるから。
頭を動かすのが得意な人と体を動かすのが得意な人で仕事が分かれる人間と同じように、言語にも得意不得意・特徴があります。
まず、各言語の特徴を見ていきます。
Rubyの特徴

1993年生まれ。
日本人のまつもとゆきひろさんにより開発された言語。
「楽しく書く」ことを目的としています。
Ruby には Perl や Python とは決定的に違う点があり、それこそが Ruby の存在価値なのです。それは「楽しさ」です。私の知る限り、Ruby ほど「楽しさ」について焦点を当てている言語は他にありません。Ruby は純粋に楽しみのために設計され、言語を作る人、使う人、学ぶ人すべてが楽しめることを目的としています。しかし、ただ単に楽しいだけではありません。Ruby は実用性も十分です。実用性がなければ楽しめないではありませんか。
引用:wikipedia
ソースコードを読むだけでなんとなくどんな処理が行われているかを推測しやすく、英語っぽいです。
記述量も少なく、シンプル。
フレームワークの種類が少なく、多くの現場・企業でRuby on Railsを採用しています。
なので、初心者がRubyを始める時に言語→Ruby、フレームワーク→Ruby on Railsというセットで始めやすいのが特徴です。
(フレームワークに関してが後で詳しく説明します)
これが、Javaなどの場合フレームワークが多数だったり企業によって独自フレームワークを採用してたりするので
勉強したけど、現場では別のフレームワークを使っていたため覚えるのに苦労することもあります。
「Web系=Ruby」という認識が広がってから、多くのプログラミングスクールでRubyを教えているので、勉強しやすい環境があるのも特徴です。
独学でもProgate→Railsチュートリアルという流れである程度のレベルまで習得できるのもいいところ。

PHPの特徴

1995年生まれ。
カナダ人のラスマス・ラードフさんにより開発された言語。
Rubyのように目的が明記されていたわけではないんですが、PHPを一言でいうと「Webサービスの開発に適した言語」と言えます。
ソースコードもRubyに引けをとらずシンプルでわかりやすい。
ちょっと違う点としては、フレームワークの種類が多いことと、学習環境がRubyに比べると整っていないことです。
一番人気のフレームワークはLaravelなのでとりあえずそれをやっておけばOKなんですが、Railsほど幅をきかせていないため
現場・企業によって別のフレームワークを使用していることも珍しくありません。
スクールでPHPを教えてるところはRubyよりはちょっと少ない印象。
また、Progateをやった後これをやればOKといったようなチュートリアルがないので、独学の場合きついかもしれません。
RubyとPHP作れるもの

各言語で作れるものと、RubyとPHPそれぞれの言語で作られている代表的なサービスを紹介します。
Rubyで作れるもの

料理レジピサイトの「クックパッド」やソースコードを管理するサービス「Git Hub」などが有名です。
あと、僕が過去に携わったものだとサービスの料金比較サイトや食品の通販サイトなどがあります。
PHPで作れるもの

こちらの引用文にもあるとおり、「Facebook」や「Wikipedia」が有名ですね。
グルメの口コミサイト「ぐるなび」や、家探しアプリ「Home’s」などもPHPでつくられています。
PHPはツールです。ハンマーのようなものです。何の変哲もない道具だけれど,
それを使って作られたものは人々の暮らしを変えてきました。(中略)もっと大規模な, たとえばFacebook, Yahoo!, Wikipediaなど私たちの生活を確実に変えたものも, みんなPHPで書かれたのです。少なくとも最初はね。
RubyとPHPの難易度
言語自体の難易度は変わりませんが、環境を考慮するとRubyの方が少し簡単です。
これがRubyとJavaみたいに、書くコード量が違ったり、読んだ時理解するまでに時間がかかったりというのがあれば別なんですが、
RubyとPHPに関してはそのあたりもあまり違いはないです。
これに関しては両方やったので、間違い無いかと。
ただ、環境面に関しては若干Rubyの方が恵まれている印象です。
理由①:フレームワークが固定
フレームワークとは、「枠組み」の事です。
例えるなら、オーダーメイドスーツのようなもの。
枠組みはスーツというものがあるけど、中身はスーツの範囲内であれば何をしてもOK。
というイメージ。
例えば、「上品な服を作ってください!」というお題に対して、
フレームワーク(枠組み)が決まってない場合
「上品ってどんなものか?」というところから始まり、上から合わせればいいのか、スボンから決めればいいのか
素材や形はどうすればいいのかがわからなくなり、ファッションに精通してる人じゃないとお題クリアができません。
それが、「上品な服を作ってください!」というお題に対して
「オーダーメイドスーツ」というフレームワーク(枠組み)がある場合、
上品といえばシャツとジャケットとパンツとネクタイが必要なとこまでは把握(フレームワークなので決まってる)。
そのあとの素材・色をどうするかというわかりやすい部分だけを考えればOKになります。
こう言う事です。(わかりにくかったらすみません)
実際の現場に起き変えると・・・
マッチングアプリを作ってください!というお題に対して
フレームワークがないと、何をどこから作っていくのが正解なのかがわかりにくく、
お題クリアまでの難易度が高くなる=手伝える人が限られてくる
ということになりかねません。
でも、同じお題に対して
フレームワークがRuby on Railsと決まっていればない時に比べ、簡単にアプリが作れるわけです。
しかし、PHPやJavaなどはこのフレームワークが複数あり、現場によって違う事があります。
それに対してRubyはRubyといえばRuby on Railsというほどフレームワークが固定化されてるので、
情報を集める時もほぼ全てのサイトがRailsでの実装を前提として書かれているためわかりやすいです。
理由②:教えてくれる環境が整ってる
少し前にRubyが人気になり、Rubyは初学者にオススメな言語という理由で多くのエンジニアスクールがRubyを教え始めました、
なので、Rubyを勉強しようと思ったら多くのスクールから選べる事になります。
より自分にあった方法で勉強できる環境があるのもいいところだと思います。
この②点が主にRubyの方が若干勉強難易度が低いと思う部分です。

RubyとPHPの収入

言語選びをする上で、稼ぎやすいかどうかはかなり重要。
自分はそこまでお金はいらないから普通の生活がしたいなんて嘘言わないで、もっとお金に貪欲になりましょう。
この世の99%のことはお金で解決できます。笑
RubyとPHPそれぞれの言語ごとの平均年収をみてみましょう。

引用:みんなのスタンバイ
Rubyが606万円、PHPが538万円という結果になりました。
なぜ少し差ができたかというと理由は案件の数だと思います。
PHPはRubyに比べて案件数が多いので、多い分下の方に位置する人も多く平均すると年収が低めになってしまったのではないかと。
そのあたりを考慮すると、「平均年収はあまりかわらない」(データ上だとRubyが若干上)と言えます。
RubyとPHPの求人数

正社員で検索すると、検索に引っかかろうとしてRubyを昔扱ってたけど今は扱ってないような会社もカウントされて正確な数字が出ません。
なので今回は、僕も利用経験のある業界大手フリーランスエージェント
レバテックフリーランスのサイトで言語ごとの案件数を調べてみようと思います。
フリーランスエージェントとは、営業から契約締結までの業務をすべて代行してくれるサービスやその運営会社の事です。
派遣会社のようなもの。
Rubyの求人数

引用:レバテックフリーランス
594件。
時期によるので、これは目安程度に考えてください。
Rubyは中小のベンチャーでよく利用さてれてるので、求人数はPHPに比べると少なく感じるかもしれません。
PHPの求人数

引用:レバテックフリーランス
1437件。
Rubyと比べると倍以上の求人数になりました。
さすがPHP。
圧倒的な求人数ですね。
RubyとPHPの将来性

結論、どっちも気にする必要はありません。
現時点でどちらの言語もエンジニアが不足しており、今後も急に需要がなくなることはないでしょう。
PHPは終わったと言われて10年以上しますし
Rubyはオワコンと言われてもまだまだ多くの現場で利用されています。
そもそもある言語が急にぱったりと使われなくなることなんてありません。
例えば、自動精算レジ。
かなり便利であれが出た当初はこれでコンビニ店員は不要になる?という類のニュースが話題になりましたが、
いまだに近所のコンビニには普通に店員さんがいます。
どんなに便利な技術でも急に総入れ替えはありえません。
あるとしても数年かけながら徐々に変わっていくものです。
もし本当にRubyやPHPに変わる超便利な言語がでたとしたら
まず大手ベンチャー企業が取り入れ、メリットでメリットが判明し、業界の偉い人たちの間で議論が繰り返され、
普通の企業が取り入れるのははやくて5〜6年後とかになるんじゃないでしょうか?
そうなったら5年の間に、その新しい言語を勉強したり、インフラやデザイン方面のスキルつけていくなり
生き残り方はたくさんあります。
プログラミング言語は1つ身につけてしまえば、他の言語は始めの言語ほど難しく感じないはずです。
なので、将来性に関してはRubyもPHPも心配する必要はないでしょう。
これから勉強するならRubyとPHPどっちがいいのか【難易度・収入・将来性】〜まとめ〜

- Rubyの特徴は楽しく書く
- PHPの特徴は簡単に書く
- 難易度は環境面を考慮するとRubyの方が少し低い
- 収入はRubyの方がわずかに高い
- 求人数はPHPの方が多い
- 将来性はどちらも変わらない
冒頭でも述べた通り、僕はRubyをオススメします。
もし、もうすでにPHPでできてワープレスでウェブ制作しかしないと言うならPHPでもいいかもしれませんが・・・。
Rubyは初学者でも楽しく簡単にプログラムを書く事ができて、すぐに動くアプリを作れます。
未経験から始めると、挫折することなくとりあえず続けるのがなによりも大切なので、初めにプログラミング楽しいなと思えるRubyはとても相性がいいですよ。


オススメスクールを紹介しているので、こちらもどうぞ!

エンジニアになりたい人・フリーランスに興味がある人に向けてLINEマガジンの配信を開始しました。
登録してもらえると嬉しいです。
エンジニアになるのに大切な情報を網羅したので、きっと参考になるはず。
今回も最後まで読んでくれて、ありがとうございました!
では、また!