- 更新日: 2022年09月09日
- 公開日: 2017年07月11日
気になる!PHPエンジニアの年収と案件。Rubyとの違いも含めて説明
PHPの学習をはじめる前に、年収やお仕事内容、他の言語との違いについて知っておきたいですよね。 今回は特に、PHPとよく比べられるRubyについて、言語そのものの違いと年収や案件などの違いをご紹介します。 もしPHPとRuby、どちらを学ぼうか迷っているなら、きっとこの記事でどちらを学ぶべきか決まるでしょう。
PHP と Ruby
PHPとRubyが生まれた背景
PHPは、1995年ラスマス・ラードスさんが自分のホームページの管理のために開発したプログラム(C言語)が発展してできた言語です。本人曰く
「プログラミング言語にする気はなかったけど、もう止められなくて、チームが発足した」
と述べ、その後Webで使いやすいように開発が進められてPHPが誕生しました。
一方でRubyは、1993年当時静岡県のソフトウェア開発会社に勤めていた松本 行弘氏によって考案・作成されたプログラミング言語です。当時のPerlやPythonに満足できなく、満足のいく言語がないなら自分で作ろう!と直感的に楽しめる言語開発が行われ、1995年に初回バージョンがリリースされました。
今ではPHPかRuby、どちらを学習するか迷うかもしれませんが、開発の背景は全く別物で、まさか2つの言語が比べられるようになるとは、当時としては考えられなかったと思います。
PHPとRubyの概要
PHPは、サーバーサイド言語の一種で、PHP開発チームとZendテクノロジー社によって運営・管理・開発されています。 PHPの利用状況については、現在サーバーで稼働しているプログラミング言語の内 82.6%がPHPといわれ、世界中のWebアプリケーションを支えている言語といえるでしょう。*
Ruby もPHP同様サーバーサイド言語の一種で、開発者の松本 行弘さんを核とするRubyアソシエーションによって運営・管理・開発されています。 Rubyの利用状況(サーバー稼働率)については、0.6%*とPHPに比べると低いですが、フレームワークという開発キットについてはRubyベースが一番人気です。*
PHPとRubyの書き心地
2つの言語を実際に書いて、書き心地を確かめたいと思います。
■HelloPHP■
<?php echo "HelloPHP"; ?>
■HelloRuby■
print "HelloRuby"
どちらも簡単な文章を出力するプログラムですが、Rubyの方が必要最低限という感じですね。 これは基本構文に限らず、応用的なコードになっても同じことがいえて、実際にコードを打って、実行していくとRubyの方がプログラミングしていて楽しくなってきます。それはまるで機械と会話しているような気分です。
Rubyに比べるとPHPは扱いにくいかもしれませんが、処理速度はRubyより上で、JavaやCに比べると読みやすく理解しやすいWeb用のプログラミング言語になります。
PHPとRubyの用途・事例
PHP
ネット通販サイト/楽天、Yahoo!など
投稿サイト/Yahoo知恵袋、ウィキペディアなど
ポータルサイト/早稲田大学、京都水族館など
Ruby
ネット通販サイト/ Groupon
投稿サイト/クックパッドや食べログ、Slideshare、クラウドワークス、airbnb、GitHubなど
ポータルサイト/㈱万葉、Hello Rubyなど
どちらも同じ時期にリリースされた言語なのに、老舗系WebサイトにはPHP、新興系WebサイトにはRubyが使われているように感じます。 シェアが関係しているのかもしれませんが、Ruby製のネット通販サイトとポータルサイトを検索するのは難しいです。
PHPとRubyのシェアが違う理由
PHPとRubyはどちらも同じ時期にリリースされて、どちらもWebサービスの為に使われているのにどうしてこんなにシェアに開きがあるのでしょうか? 2つの言語がたどってきた歴史を元に考察してみます。
PHPのシェアが高い理由
まずPHPは、C言語やJava、Perlの影響を受けて開発された言語です。CやJavaはプログラマに人気の言語で、PHPは比較的馴染みやすかったと考えられます。 それからPHPのキッカケを作ったプログラマのラスマスさんは、トップシェア・サーバーのApacheの開発に貢献したことでも有名で、ApacheにはPHPが標準搭載されています(Apache HTTP Server)。 そしてWebサービスのトップランナー「Yahoo! (1994年)」や「NYTimes(1995年)」などがPHPを採用し、他のWebサービスもこれらを追随する形でPHPが使われていきました。
1990年後半、世界はITバブルに湧き、数多くの企業や個人がWeb市場に参入する中で、Webサイトの開発需要が増えました*。それに伴ってWebエンジニア需要も増え、Web用に開発されたエンジニアにも馴染みやすい、環境の整った、事例もあるPHPは市場にマッチして急速に拡大したと考えられます。
Rubyが目立つ理由
Rubyについては、Smalltalkというオブジェクト指向言語の影響を受けて開発が行われました。このSmalltalkという言語は、「人間とコンピュータの共生」を目指して作られた言語で、JavaやCとは使い勝手が異なるものです。
Rubyが注目されるようになった理由としては、2005年にリリースされたRuby on Rails(以下 Rails)というフレームワーク、それから2006年にMac OSX 10.5でRailsが標準搭載されたことでしょう。 現在もMac PCにはRubyが標準搭載されていて、コマンド一発でRails をインストールできます。 そして時代はWeb2.0に入り、アジャイル開発が周知され、SlideShare(2006)やGitHub(2007)の成功事例をもとに Railsを使ったWeb開発が積極的に行われるようになりました。 また2011年、日本工業規格(JISX3017)にRubyは制定され、FortranやC言語と同じような社会的地位を獲得しています。(PHPはJIS規格制定されていません)
こうして2つの言語を振り返ってみますと、プログラマへの親和性や環境、市場拡大時期に違いがあることがわかりますね。
PHPとRubyの使用感
メインの開発環境について
Rubyの記事を読んでいると必ずと言っていいほど Ruby on Railsというフレームワークが登場してきます。 こちらでは2つの言語によく用いられる開発環境を元に、違いを比較してみます。
まずフレームワーク(framework)ですが、一言で言うと「さまざまなシステム開発を効率化してくれる機能群とその枠組み」になります。 Ruby on Railsの場合で言うと、Ruby on Railsという枠を用意して、その中に機能を追加(プログラム)していくんですね。 このシステムはある程度Rubyやプログラミングができる人なら楽しいのですが、プログラミング初心者にとっては決して簡単なものではありません。 そして強い決意と目的がなければ、何の結果もみることができないシステムになっています。 これはフレームワークをインストールした初期の状態を確認すると、容易に想像できるでしょう。
■Ruby on Railsをインストールした様子■
つまり Ruby on Railsをはじめるには、Ruby言語の知識とフレームワークの知識、それからWebに関係する HTMLやCSS、サービスを公開する(デプロイ)知識が必要になります。
PHPでもフレームワークは用意されていますが、市場シェアとしては圧倒的にCMSという開発ソフトの方が有名です。
CMS プログラミング知識ゼロでも、Webサイトの管理・更新ができるシステム。
CMSの中でも特に人気のあるソフトとしてWordPressが有名です。その人気ぶりは他のソフトより桁違いに高く、全Webサイトの25%以上*にWordPressが使われていると報告されています。 CMSとフレームワークの違いはいくつかありますが、プログラミング初心者にとっての一番のポイントは「プログラミング言語を理解していなくてもそれなりの形を作れる」ということでしょう。 これはWordPressのインストールから記事の投稿までを見ていただくとイメージできると思います。 CMSについてもインストールから投稿までの様子を録画しましたので、ご参照下さい。
■WordPressのインストールから投稿までの様子■
いかがでしょうか?これならプログラミング知識がない段階からでもサービスを開始することができそうですよね。 実際にWordPressをふれる中で「ここをもっとこうしたい!」と思ってから、HTMLやPHPの学習をはじめても大丈夫と思います。またPHPの場合は、HTMLと一緒にコードを書くことができまるため、学習初期段階からPHPをWebで確認しながら、楽しく学習を進めることが可能でしょう。
フレームワークについて
RubyのRuby on Rails では、MVC(制御しやすい)や CoC(情報共有しやすい)、DRY(効率がいい)という特徴がありますが、これはRailsに限ったものではありません。 PHPのSymfonyというフレームワークでも MVC、CoC、DRYを採用しています。 ただ同じようなフレームワークを使うなら、比較的簡単なRubyの方が好まれる傾向にありますね。 実際にPHPフレームワークのSymfonyもインストールしてみましたが、初期画面はRailsと同じような内容でした。
■PHPのフレームワークをインストールした様子■
PHPとRubyの年収や働き方の違い
PHPとRubyの求人内容の違い(2017.7.10時点)
PHPの求人件数 | Rubyの求人件数 | |
---|---|---|
indeed | 23,483 | 9,037 |
クラウドワークス | 99 | 44 |
市場シェアの関係もあってPHPとRubyでは、求人件数に圧倒的な差があります。 仕事内容も、PHPは自社開発系や受託系など多様ですが、Rubyの場合は比較的自社開発系が多い傾向です。 つまりPHPエンジニアとして就職を考えた場合、様々な業種やコンテンツの制作に関われる機会が多く、自分にあった働き方を見つけられる可能性が高まります。一方Rubyの場合は、特定の業種やコンテンツに絞られる可能性がありますので、向き不向きが顕著に現れるかもしれません。
PHPエンジニアとRubyエンジニアの平均年収
PHPソフトウェア・エンジニアの平均年収 280〜500万円*
Rubyソフトウェア・エンジニアの平均年収 720万円*
最近の求人情報は、給与や年俸を公開していないケースも多く、統計データが少ないことから上記のようなムラのあるデータになりました。 ただデータ量の多いアメリカを見てみますと、確かにRubyエンジニアの方がPHPより1割〜2割ほど年収は高いですが、シニアクラスになるとどちらも1000万円以上で差は感じられなくなります。求人数については、PHPの方が5倍ほど多く、強い需要であることが確認できますね。
将来IT起業を考えている場合
プログラミングを勉強して将来Webサービスやアプリをリリースしたい、起業したい、と考えている方もいらっしゃると思います。 この場合は、PHP、Rubyに限らずJavaScriptやRust、C#など視野を拡げてプログラミング言語を知る必要があるでしょう。 もしやりたいことがネットショップや情報系サイトの場合であればPHP、ユーザー同士で交流が生まれるものではRubyもしくはPHP、リアルタイムに情報処理する内容であればJavaScript(Node.JS)、Microsoft好きであればC#などある程度言語の特性を知っておくと、問題を解決するためにどの言語を使えば適切か判断することができます。
\Webサイト担当者としてのスキルが身に付く/
まとめ
- Rubyは、Ruby on Rails(フレームワーク)の使用前提で学習する
- Rubyは、書いていて楽しくなる言語、プログラマー本位
- Ruby on Railsには、Ruby以外にHTMLやCSSの知識が必須
- Ruby on Railsでサービスを公開するには、まずプログラミング言語の学習と理解が必須
- ログインを伴うユーザー主体型のWebアプリに採用が多い
- Rubyの就職・転職後の仕事は、自社開発ソフトに関わる傾向
- Rubyは国内のRubyアソシエーションが管理・運営・開発(維持コスト 約3440万円/年 *)
- PHPは、JavaやCに比べるとシンプルな言語で、プログラミング初心者から上級者まで利用。システム本位の言語
- PHPは、プログラミング言語のみ、フレームワーク、CMSとバリエーション豊かな開発環境
- プログラミング知識ゼロでもPHPを使ったWebサービスをはじめられる
- ネットショップからSNS、ポータルサイトにブログサイトなど多くのWebアプリ、Webサービスに採用
- PHPの就職・転職後の仕事は、受託系・自社開発系などバリエーション豊かな傾向
- PHPは、PHP開発チームとZendテクノロジー社によって管理・運営・開発(会計情報なし(無報酬?))
以上のことから、プログラミング初心者でも短期間にサービスを開始したり、仕事に就くためにはPHPの方が適していると判断できます。 Rubyについては、一通りPHPが終わってからでも遅くないと思いますし、実際の打ち合わせ現場では、PHPからRubyへの移行、RubyからPHPへの移行などもあり、どちらの言語も知っておかないと仕事にならないケースも出てくるんですね。 一歩づつ確実に前に進むためには、PHPかRuby、どちらが自分に適しているか考えてみてください。
そもそもPHP以前にHTMLやCSSも分からない、という方はCodeCampの無料カウンセリングを通じてHTMLやCSS、それからプログラミング体験してみませんか? 百聞は一見にしかず、ですよね。
※無料カウンセリングで何が相談できるのかを事前に確認しておくのがおすすめです。
- この記事を書いた人
- オシママサラ