Tech Racho エンジニアの「?」を「!」に。
  • 開発

Googleさんから読み取るPHPとRails開発の比較

渡辺さんPHPとRubyを徹底比較!開発効率をあげて収益を増やすという記事を出していたので,反応してみます.

この記事は,PHPとRails開発について,PHPはメジャーでRailsは開発者が少ないとは言うけど,証拠はあるのかよ!とか具体的にどれくらいの開発者数の差があるの?という質問にデータを用いて答えてみます.
PHPとRails開発の得意分野やメリット・デメリットについては前述の記事に良くまとまっていますので,そちらを参照すると良いです.

情報ソースについて

今回の比較にはGoogle検索のヒット数,及びGoogleトレンドを利用しました.Google検索は今までの蓄積された情報の累計,Googleトレンドは今流行っているかどうか(勢いがあるか)という指標としてある程度の信頼性があるのではないかと思います.
「ヒット数==開発者の数」というのは多少乱暴ですが,それなりの指標にはなるのではないかと思います.

PHP v.s. Rails

では,PHPとRailsを比較してみましょう.まずは「〜〜開発」「〜〜 development」で調べてみました.

Google検索

- "PHP開発": 41,500,000
- "Rails開発": 6,730,000

Screen Shot 2013-05-23 at 18.25.20

- "PHP development": 279,000,000
- "Rails development": 62,500,000
Screen Shot 2013-05-23 at 18.18.31

Googleトレンド

日本語

英語

・・・うーん,Railsさんが息をしていないようです.PHP v.s. Railsの結果はどう見てもPHPの圧勝と言えるでしょう.Google検索で4〜7倍,Googleトレンドでもやはり7倍程度の情報量の差があるようです.
Googleトレンドから読み取れる他の情報としては,PHPはインドの情報が多いのに対し,Railsはアメリカとインドの情報が多い様です.

これは僕の主観になりますが,実際PHPとRailsという軸で見てみると,国内・海外問わずPHPの案件やサイトの方が多いです.有名どころではFacebookのような超大規模サイトでもPHPは採用されており,まだまだ一線で使える現役言語であることが分かります.

だがしかし

しかし,ちょっと待って下さい.PHPはプログラミング言語,RailsはWebアプリケーションフレームワークです.種類の違う二つのものを比べるのはフェアじゃないですね.
軸を合わせるために,PHPのWebアプリケーションフレームワークとRailsで比較してみましょう.

PHPフレームワーク v.s. Rails

ここでは,3大メジャーPHPフレームワークのSymfonyZend FrameworkCakePHPとRailsを比較してみます.

Google検索

- "Symfony": 7,060,000
- "Zend Framework": 5,430,000
- "CakePHP": 6,470,000
- 上記3フレームワークの合計: 18,960,000
- "Rails": 93,400,000

Screen Shot 2013-05-23 at 19.33.24

Googleトレンド

 

・・・いかがでしょうか?先ほどとは打って変わってPHPフレームワーク涙目のRails圧勝の結果となりました.
Google検索では個別フレームワークで見て13倍以上,PHPの3フレームワークの合計と比較しても5倍以上の開きがあります.また,Googleトレンドでも9倍程度の開きがあることが見て取れます.

考察など

これらの結果をまとめると,PHPでの開発Railsの開発ではPHPが圧倒的に多い一方,フレームワークを使うという条件を付けた場合においてはこの順位が逆転するということがわかりました.
ここで気になるのは,PHP開発におけるフレームワーク利用率です.世の中のPHPプログラムのうち,どの程度の割合がフレームワークを使った開発をしているのでしょうか?

PHP : Rails = 7 : 1
PHPフレームワーク : Rails = 1 : 5

という結果から,単純に計算すると,

PHP : Rails : PHPフレームワーク = 35 : 5 : 1

という計算結果が導き出せます.
つまり,世の中のPHPプログラムのうち,フレームワークを使った開発は1/35程度という仮説が導き出せるわけですね.
もしこれが単純に開発者数と比例すると仮定した場合,PHPプログラマの中でフレームワークを扱えるエンジニアは35人に一人ということになります.
一般的な小中規模Web開発でプログラマを35人も雇うことは無いので,なかなか厳しい割合といえます.また,上記の割合は3種類のフレームワークの合計と比較しているので,実際に任意のPHPプログラマ集合から同じフレームワークを使っている人を見つけるには,さらに難易度が高いことになるわけですね.

一方,RailsプログラマはRails自体がフレームワークなので,全員フレームワークを扱えます.Railsは比較的規約の厳しいフレームワークのため,Railsの規約にさえ従っていればある程度のコードの質は自動的に担保されます.
また,Railsエンジニアは,上記の式からPHPフレームワークの使えるPHPエンジニアの5倍の人数がいると考えられますので,フレームワークを使った開発が必要な場合はPHPよりRailsの方が開発に向いているのではないか,という結論になります.

終わりに

今回使ったGoogle検索とGoogleトレンドを使った比較は相当乱暴な方法ですが,PHPの世界で未だにフレームワークを使った開発がメジャーではないということを証明することはできたと思います.
スクリプトベタ書きによるプログラミングは敷居が低く,小さいコードならコピペが容易ですが,後々システムが大きくなればなるほど負の遺産としてシステムにのし掛かってきます.

こちらの記事にあるように,フレームワークを使うのに適した開発を行う場合は,PHPにこだわらずRailsを採用するのを考えてみるのも良いのではないでしょうか.

僕はPHPフレームワークの世界からRailsに移行した身として両方の世界を知っていますが,今のRails開発は一度経験するともうPHPには戻れない位の勢いをひしひしと感じます.これからきっちりとしたWeb開発を勉強する人は,Railsを検討してみるのも良いと思いますよ.

おまけ

社内で見せたら「PHP v.s. Rubyはないのか?」と言われたので測ってみました.
※計測した時期が異なるので上記と結果が多少違います.

Google検索

日本語
- "PHP開発": 36,400,000
- "Ruby開発": 18,700,000
Screen Shot 2013-05-23 at 20.16.44

英語
- "PHP development": 257,000,000
- "Ruby development": 109,000,000
Screen Shot 2013-05-23 at 21.15.02

Googleトレンド

日本語

英語

というわけで,言語レベルで見るとGoogle検索では国内で約2倍,英語圏で2.5倍の開きがあるようです.日本の方が言語自体の普及度が高いのは,日本製ということもあるんでしょうね.
Googleトレンドでみると,海外では7倍近くの開きがあり,PHPにはやはり遠く及ばないですね.

Rubyでプログラミングするのは楽しいので,もっと普及するといいな.


CONTACT

TechRachoでは、パートナーシップをご検討いただける方からの
ご連絡をお待ちしております。ぜひお気軽にご意見・ご相談ください。