MENU
カテゴリー
おすすめプログラミングスクール紹介中! 一覧はこちらから

PHP vs Ruby vs Pythonを求人数・将来性・強みの観点から徹底比較!

PHP vs Ruby vs Pythonを求人数・将来性・強みの観点から徹底比較!

未経験からITエンジニア(バックエンドエンジニア)になりたいけど、どの言語を勉強すればいいかわからない…

上記のようにお悩みではありませんか?

バックエンドエンジニアになるために最初に学ぶおすすめ言語は、

  • PHP
  • Ruby
  • Python

の3つのどれかです。

しかしそれぞれメリットとデメリットがあり、この3つのうちどれを選べばよいかわからない…という方は多いかと思います。

実際、人それぞれ意見が分かれるところなので、ある人はRubyをおすすめしていても別の人はPHPやPythonをおすすめしている、ということがよくあります。

ウチダ

そこで本記事では、自身も未経験からITエンジニア転職を目指している筆者が、PHP、Ruby、Pythonを徹底的に調査・比較してまいりました。

その調査結果をもとに、言語を選ぶ判断基準を客観的にご紹介します。

PHP・Ruby・Pythonを項目別に徹底比較してみた

情報を整理するために、

  1. 基本情報
  2. Webフレームワーク(Laravel・Rails・Django)
  3. 求人数と年収
  4. 将来性

の4項目に分けて比較していきます。

プログラミング言語の基本情報

PHPRubyPython
開発および発表年1994年生まれ。
1995年6月8日発表。
1993年2月24日生まれ。
1995年12月発表。
1990年生まれ。
1991年発表。
開発者ラスマス・ラードフ
(デンマーク系カナダ人のプログラマ)
まつもと ゆきひろ
日本のソフトウェア技術者)
グイド・ヴァンロッサム
(オランダ出身アメリカ在住のプログラマ)
開発された目的ダイナミックなWebページ開発オブジェクト志向に基づいたプログラミング高い生産性と、読みやすいコード
代表的なサービスWordPress、Facebook、Wikipedia、Slack、ぐるなび、ココナラ、DrupalTwitter、Hulu、価格.com、食べログ、クックパッド、クラウドワークス、グノシー、AirbnbGoogle、YouTube、Instagram、Pinterest、PayPal、Dropbox、Reddit、Anki、Quora、Spotify、日経電子版

PHPは、世界で40%以上のサイトで使われている「WordPress」を構成していることから、Webサイト開発において圧倒的なシェア率を誇っています。

よく「PHPは古い」という意見がネット上で見られますが、発表時期だけでいえばPythonが最も古く、Rubyともさほど変わらないため、そういった主観的な意見に惑わされるのはやめましょう。

Rubyは、日本の技術者であるまつもとさんが作ったことから、日本語での解説書が多く日本人にとってとっつきやすい言語です。

Pythonは、コードがとにかくシンプルで可読性が高く、また機械学習のライブラリが充実しているため、特に海外で抜群の人気を誇っている言語です。最近は国内の人気も高まってきました。

Rubyで作られたシステムは徐々に他の言語に移行されつつある

実はTwitterのバックエンドシステムが、2011年の時点でRuby on RailsからJavaVMに移行しています。

これはTwitterの膨大化したアクセスを、より高速にさばくための変更です。

参考:『Twitterが、Ruby on RailsからJavaVMへ移行する理由

PHPにはWordPress、Pythonには機械学習ライブラリ(Numpy · pandas · matplotlib・· scikit-learnなど)の充実といった圧倒的な強みがありますが、Rubyにそこまでの強みはありません。

よって2000年代に入ってから登場したGo言語やScalaなどに移行されるケースは、今後も増えると予想されています。

ウチダ

しかし、詳細は後述しますが、現時点ではRubyを好んで使うベンチャー企業は非常に多く、単価の高い案件もあります。なのでそこまで心配する必要はありません。

また、たとえば「簡単なToDoアプリの作成」においては、Rubyが圧倒的にコードの記述量が少なく生産性は最も高いです。

そのため、生産性をより重視する現場ではRubyが選択されるケースもまだ存在していますし、これからも一定数あると見込めます。

参考:『どれ使うべき?3大WebフレームワークRails・Django・Laravelを徹底比較してみた

Webフレームワーク(Laravel・Rails・Django)

Webフレームワークとは、Webアプリケーションを構築するための土台となる共通機能(たとえばデータベース管理機能、セッション管理機能、ユーザー認証やアクセス制御などのセキュリティに関する機能、Webテンプレート生成機能など)をまとめて提供してくれるものです。

それぞれの言語に対して、

  • PHP…Laravel、Symfony、CakePHP、CodeIgniter、FuelPHP
  • Ruby…Ruby on Rails、Sinatra、HANAMI、Ramaze
  • Python…Django、Flask、Bottle、Tornado

といったフレームワークが多数存在しますが、これらの中でも特に「フルスタックフレームワーク」と呼ばれる、Webアプリ開発に必要な機能をひと通り備えているフレームワークである

  1. Laravel
  2. Ruby on Rails
  3. Django

以上3つについて比較していきます。

発表年やトレンド

  • Laravel…2011年6月
  • Ruby on Rails…2005年12月13日
  • Django…2005年7月21日

2005~2007年頃は、Google検索数でRuby on Railsの圧勝でした。当時これほどまでに充実していたWebフレームワークが他になかったからです。
Google Trendより参照

2005~2007年頃は、Google検索数でRuby on Railsの圧勝でした。当時これほどまでに充実していたWebフレームワークが他になかったからです。

しかし徐々にLaravelやDjangoが盛り返し、2017年を境に人気度が逆転しています。これらの背景にはAIや機械学習のブームなどがあります。

しかし徐々にLaravelやDjangoが盛り返し、2017年を境に人気度が逆転しています。これらの背景にはAIや機械学習のブームなどがあります。
Stack Overflow より引用

プログラマーのためのQ&AサイトであるStack Overflow内でのトレンドも、2017年を境に人気度が逆転しています。

これらのデータを一言でまとめるならば…

成熟したRuby on Rails、安定のDjango、伸びているLaravel

と言えるでしょう。

Ruby on Rails VS Django

Ruby on Railsは、短いコードでたくさんのファイルを自動的に生成してくれるため、慣れれば高速にWebアプリを開発することができます。また日本語のドキュメントが多いため、日本人にとって学習しやすいのが大きな利点です。

一方で、制約が多いので覚えるのに時間がかかったり、コードが抽象的になりやすくエラーに対処しづらかったりするなどのデメリットもあります。

対してDjangoは、シンプルな作りなので記述コード量は増えますが可読性が高く、エラーに対処しやすいというメリットがあります。海外の情報は多いため、英語が読めたりDeepL翻訳を駆使したりすれば困ることはまずないでしょう。

またDjangoのプログラミング言語であるPythonの人気が年々高まり続けていることから、(特に科学技術計算、AI や機械学習、画像処理などと Web アプリケーションを連携させようとした場合に)Djangoを選択するケースが増えてきているため、将来的にAI分野に参入していきたい人はDjangoを学んでおくと良いでしょう。

Laravel

Laravelは国内外問わず現在もっとも人気のあるPHPのWebフレームワークです。

Webフレームワークの中では後発で、アップデート頻度も高いため今後も機能の充実が期待できます。

自由度がとても高いことと、AWSとの連携が容易であることも人気の理由の一つです。

ウチダ

三大フレームワークすべて、paizaラーニングで環境構築なしに学ぶことができるため、実際やってみて肌に合うものを選んでもいいでしょう。

追記:学習教材の有無や質

実はプログラミング言語自体ではなくWebフレームワークの勉強が難しいことがほとんどであり、そういう観点から見ると

いかにRails・Laravel・Djangoの学習教材が充実しているか

というのは、重要な指標になります。

そしてこれを最重要視した場合、最も優れているのは「Ruby on Rails」になるでしょう。

ウチダ

Railsには定番中の定番である「Railsチュートリアル」という教材があります。1,000円前後で購入できますので、気になる方はぜひご参考ください。

Laravelは英語ができるのであれば「Laracasts」が、DjangoはUdemy の教材がそれぞれおすすめです。

求人数と年収

それぞれのプログラミング言語の求人数を、色んな媒体で調べたものを表にまとめます。

媒体PHP・LaravelRuby on RailsPython・Django
Wantedly(中途/新着)PHP:16,960件、Laravel:4,899件Ruby:13,333件、Rails:7,322件Python:13,061件、Django:1,098件
レバテックキャリアPHP:3,162件、Laravel:582件Ruby:2,001件、Rails:943件Python:2,815件、Django:222件
IndeedPHP:82,108 件、Laravel:11,908 件Ruby:34,651 件、Rails:10,619 件Python:59,977 件、Django:3,403 件
※2022年3月時点での情報です。

どの媒体でもPHPおよびLaravelの求人数は圧倒的でした。PHPはWeb界隈で利用されてきた歴史が長いため、当然といえば当然の結果です。

実際、Webサイトのサーバーサイドで使われているプログラミング言語としては、PHPは77.7%という高いシェアを誇ります。

参照:『W3Techs – World Wide Web Technology Surveys

一方、Rubyも全盛期よりは衰えてはいるものの、未だ求人数は多いです。Pythonは近年の機械学習ブームで求人数が急増しましたが、Djangoを使ったWebアプリケーション開発はまだ浸透しきっていないように感じます。

求人数はPHPの勝ち。では年収は?

上から順に

  • 2018年にビズリーチから発表されたデータ
  • 2021年に侍エンジニアが発表したデータ
  • レバテックキャリアのデータ

の3つを参照させていただきました。

順位言語年収中央値(万円)最大提示年収(万円)求人数(件)
3位Python575.11,4999,344
7位Ruby5501,20011,676
※『プログラミング言語別年収中央値を発表、求人検索エンジン「スタンバイ」調べ』より引用
順位言語正社員の平均年収
6位Python608万円
10位PHP545万円
※『プログラミング言語別の平均年収ランキング!高収入を狙える言語は?』より引用
求人数はPHPの勝ち。では年収は?
引用:『単価相場 | ITフリーエンジニアのための【レバテックフリーランス】

正社員の年収としては機械学習が強みのPythonが1位ではあるものの、フリーランスの年収としては生産性が強みのRubyが1位なのが面白いところです。

PHPは、職に困ることはなさそうですが、経験者が多いため需要と供給の関係で単価が安くなりがちな傾向にあると言えます。

言語の将来性

プログラミング言語の世界的な人気度がわかるTIOBEのデータによると、2022年3月の順位は以下のようになっています。

RankingProgramming LanguageRatingsChange
1Python14.26%+3.95%
8PHP1.92%-0.15%
16Ruby0.66%-0.52%
※『TIOBE Index for March 2022』より引用

PythonとPHPの人気度の推移は、以下の画像の通りです。

PythonとPHPの人気度の推移は、以下の画像の通りです。
引用:『TIOBE Index for March 2022
PythonとPHPの人気度の推移は、以下の画像の通りです。2
引用:『TIOBE Index for March 2022

Rubyは、Railsが発表された直後の2006年に世界1位を記録していますが、それ以降は高くも低くもない順位にとどまっています。

ただしQ-successが発表したデータによると、RubyのWebのサーバーサイドで使用されている割合が、ここ1年で4.5%→6.0%に増加していることから、世界的に見てもまだ需要はあるといえます。

ただしQ-successが発表したデータによると、RubyのWebのサーバーサイドで使用されている割合が、ここ1年で4.5%→6.0%に増加していることから、世界的に見てもまだ需要はあるといえます。
引用:『Historical trends in the usage statistics of server-side programming languages for websites
ウチダ

Pythonのシェア率が低いのが気になりますが、そもそもPythonはWebだけではなくAI・機械学習・IoTなどの別分野でも活躍できるのが大きなメリットなので、Webというくくりだけで見ないのが得策です。

PythonとPHPの将来性は?

Pythonは、近年のAIブームやプログラミング教育の組込みに支えられている影響もあり、将来有望です。

しかし、機械学習では大量のデータを処理するため速度や省資源化が重要であり、Rustの様なC系よりかは簡易だけどコンパイル系で速度が速い言語に立場を脅かされる可能性は十分にあります。

対してPHPは、Webサイトで未だシェアが増え続けているWordPressが栄え続ける限り、絶えることはないと断言できます。

「確実な将来性」という観点ではPHPに、「希望的観測的な将来性」という観点ではPythonに軍配が上がるでしょう。

ウチダ

その他「難易度」「速度」「学習コスト」に関しては、3つともメジャーな動的型付け言語という点で共通しているため、それほど大きな差はないと言えます。

学習については、Youtubeで20分以上&今年以内にチェックを付け、「言語(またはWebフレームワーク) clone app」で調べると、海外の質の高い教材を見つけることができますので、ぜひご参考ください。

スポンサーリンク

PHP・Ruby・Pythonの特徴を主観と客観を交えて解説

以上のデータを踏まえ、PHP・Ruby・Pythonの強みや弱みを改めてまとめておきたいと思います。

PHPの強み弱み

元々PHPはプログラミング言語と言えるものではなく、単にテンプレート的な処理を行うための言語だったため、<?php ?>などの少しゴチャっとした書き方が残っています。

しかし度重なる機能追加やLaravelなどの優秀なWebフレームワークの登場により、PHPは求人数・将来性ともに文句のない人気言語の一つとなりました。

特に「Webサイトの開発がしたい」という方は、WordPressを扱えるPHPを選ぶようにしましょう。

またソーシャルゲーム業界では、PHPがよく使われているという伝統的な風習があります。

Rubyの強み弱み

Rubyはこれら3つの言語の中で最もオブジェクト指向が強く、生産性の高い言語と言われています。また日本人が作ったプログラミング言語ということもあり、日本人プログラマーからの支持が厚いです。

一方で海外では、Rubyから他の言語に移行している現実があります。またコード量が少なくていい分、シンプルさに欠けるため、初心者のうちだとエラー対処に困るなどのデメリットもあります。

システム開発のスピードを重視するベンチャーやスタートアップ企業に就職したい」という方は、Rubyエンジニアを目指しましょう。

Pythonの強み弱み

PythonはC言語などと比べれば実行速度は劣りますが、それでもたとえばInstagramではPythonとDjangoを採用しています。

その理由を次のように述べています。

「Instagram のボトルネックは開発速度です。コードの実行速度ではありません。」

Pythonはコードが非常にシンプルなプログラミング言語なので、誰が書いても同じようなコードになりやすいです。

一見デメリットのように感じますが、「人によってコードの癖がでづらいため、大人数の開発に向いている」と捉えることもできます。現にPythonはGoogleやYouTubeで採用されているため、大規模開発に向いていると言えるでしょう。

「シンプルなコードが書けるようになりたい」「将来機械学習の分野に携わりたい」という方は、PythonとDjangoを勉強するようにしましょう。

Pythonは競プロやデータ分析コンペにもおすすめ

AtCoderなどの競技プログラミングでは、C++の次にPythonがよく使われているため、Pythonでの解説は多いです。

また世界的なデータ分析のコンペティションであるkaggleでは、ほぼ全員がPythonを使っています。

ウチダ

筆者のウチダもAtCoderやkaggleは触っていますが、結構楽しいですよ。

競プロやデータ分析コンペに興味がある人は、Pythonから始めてみると色々スムーズに事が進むと思います。

まとめ:どれを選んでも良し!好きな一つを極めて仕事につなげよう

PHP vs Ruby vs Pythonまとめ
  • 若干の差はあれど、どれを選んでも仕事に困ることはない。
  • Webサイト開発がしたい人はPHP、システム開発のスピードを重視した現場で働きたい人はRuby、シンプルなコードが書きたいor機械学習に携わりたい人はPythonを選んでおけばOK。
  • 3つすべてではなく、どれか1つを極めよう。

まずはプログラミング言語を一つ極めることが、エンジニアとしての能力を高め次のプログラミング言語の習得を容易にします。

本記事を参考に、自分の気に入ったプログラミング言語を極め、バックエンドエンジニアとしてのキャリアをスタートさせましょう!

ウチダ

PHP、Ruby、Pythonを使ったWebアプリケーション開発が学べるおすすめのプログラミングスクールは、「Tech Academy」と「侍エンジニア」の2つです。

両スクールともに無料体験を実施しているため、「独学だときつい」「なるべく早くITエンジニアになりたい」と感じている方は、以下のボタンからぜひお気軽にお問い合わせください。

\今すぐ無料体験を受けてみる/

詳細記事はこちらから>>『テックアカデミー(TechAcademy)ってひどいの?評判・料金・費用を徹底解説

\最短1ヶ月でITエンジニアに/

詳細記事はこちらから>>『SAMURAI ENGINEER(旧侍エンジニア塾)の炎上を徹底解説!【今もやばい?口コミ多数あり】

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
スポンサーリンク

コメントを残す

コメントする

CAPTCHA


目次