プログラミング言語の人気の『浮き沈みの法則』を考えてみた

      2017/04/12

指さす女の子

「今一番流行ってる言語って何だろう?」
「今後伸びそうな言語ってどういう言語だろう?」

どうせ学ぶなら、今後伸びていく言語を選びたいものです。
といっても、何が流行るかはその時になってみないと分かりません。

「いえ、ある程度は予測できます、過去の歴史を見ていけば!」

そんなわけで今回は過去20年程度のプログラミング言語の浮き沈みの法則を考えてみます。

PCソフトの開発でVisual Basic6が流行った時代(1995年〜2000年代前半)

私がプログラミングを始めたのは1998年、情報処理の専門学校ででした。
当時授業で教えていたのは主に、

  • Visual C++6(VCと略す)
  • Visual Basic6(VBと略す)

でした。HTMLやJavaScriptもちょろっとはやっていましたが、メインはC++とVBだったんです。

当時はWindowsのソフト開発の需要が高かったので、このようなカリキュラムになっていたのでしょう。

C++でWindowsのアプリケーションを作ろうとすると、ウィンドウを一つ表示してラベルにHello Worldと表示するだけで1000行以上のコードが必要でした。

それに対してVBならば、コードを一行も書かなくても開発ツールでラベルをドラッグアンドドロップするだけで、同じものが作れたんです。

ですから、業務アプリケーション開発の分野ではVBでクライアントアプリを作って、サーバー側をC++で作るようなシステムが流行りました。

ということで一つ目の法則です。

法則1:生産性の高い言語が普及する

Webアプリケーション開発でJava, PHPが流行った時代(2000年代前半〜後半)

VBの時代には、開発したソフトウェアをPCに一台一台インストールしていしましたが、インターネットの普及によりWeb技術が発展したことで、業務アプリケーションもWebで構築しようという流れになりました。

Webアプリケーションならばブラウザさえあれば、ソフトウェアのインストールが不要となります。これは大きなメリットです。ソフトウェアのバージョンアップ時にもWebアプリならば何もする必要がなくて非常に便利です。

業務系Webアプリケーション開発で一番使われたのはJavaでした。Javaは元々ブラウザ上で動くちょっとしたゲーム等を開発する為のアプレットという技術が中心でしたが、Webのサーバーサイドを実装する技術(Servlet, JSP, JDBC)の誕生によって、Webアプリケーション開発の分野で花開きました。

コンシューマ向けWebサービスの分野ではPHPが流行しました。Yahoo JapanやFacebook等の世界有数のインターネットサービスで採用される等、Web開発の中心技術となりました。

法則2:ソフトウェア形態の転換(PCインストール型→Web)によって新たな言語の需要が生まれる

Web2.0でJavaScript(Ajax)が流行った時代(2000年代中盤〜2010年代前半)

Web2.0という言葉が流行った時代がありましたよね。

Web1.0ではHTML等の専門知識のある人だけがWebサイトで情報発信していたのに対して、Web2.0ではブログやSNSが生まれて、Webの専門知識がない人も情報発信できるようになりました。

またGoogleマップによってJavaScriptが見直されて、AjaxというリッチなWebの操作性を生み出す技術が生まれました。

それまでのJavaScriptはちょっとした入力チェックくらいにしか使われていませんでしたが、GoogleMapのような画期的なアプリケーションがリリースされた結果JavaScriptの可能性が大きく見直されることとなりました。

法則3:キラーアプリケーションの登場によって下火だった技術がブレイクすることがある

スマホアプリ開発でObjective-C, Swift, Java(Android) , C#(Unity)が流行ってる現在(2010年代前半〜現在)

初期のiPhoneが発表された頃は、「話題にはなったけど、そんなに普及しないんじゃないかなぁ」などと高をくくっていました。が、その後あっという間に普及して、現在はWebサイトのアクセス数もスマホからが半分以上になっています。

スマホアプリの分野ではLINEのようなチャットアプリが大人気となりメールにとって代わる存在となりました。

スマホゲームの分野ではパズルアンドドラゴンやモンスターストライクが大ヒットしてスマホゲームバブルが起きました。その後、ポケモンGoでAR時代幕開けかと言われています。

法則4:新しいデバイスが流行るとそこで動くソフトウェアを開発できるプログラミング言語が流行る

iPhoneやiPadのようなiOS上で動かすネイティブアプリを開発するプログラミング言語はObjective-Cだけでした。Objective-CはC言語をベースにしていますが、文法が独特過ぎて、非常にとっつきにくく修得が難しい言語です。

しかし、iOSアプリのネィティブAPIを直接使えるのはObjective-Cだけでしたので、爆発的に普及しました。現在はAppleが新たに開発した新言語Swiftを使ってiOSアプリを開発できるようになりました。

SwiftはObjective-Cと違ってとても一般的な文法をしていて修得しやすい言語になっています。

法則5:とっつきにくい言語でも、それしか開発手段がなければ流行る

今後、流行る言語を予想すると?

ここまでで見出した法則に基づいて予想できることは、新たなデバイスの普及によって、その開発言語が流行ることです。

今後新たに流行りそうなデバイスとしては、

  • Apple Watch
  • Android Wear
  • Google Glass

等のウェアブル端末があります。これらのデバイスで動作するアプリケーションはスマホと同じ言語で開発できるので、

  • Apple WatchならSwift
  • Android Wear・Google GlassならJava

で開発できます。これだと、新たに流行る言語ってことにはなりませんね。

新し目の言語としてはGoやScala、Node.jsがありますが、これらの言語でしか開発できないアプリケーションというものがないので、爆発的に普及するということは考えにくいです。

流行ってから始めるでもOK

私は2014年にC#とUnityを独学してスマホゲームエンジニアに転身できました。2014年はUnityがすっかり流行ってる状態でしたが、そこから初めても十分職を得られましたし、ある程度流行ってから始めたほうが学習するための書籍やWebサイトも出そろっていて効率よく学べます。

言語を学ぶのに一番手っ取り早い方法は、仕事で使うことです。独学である程度基本を学んだら、入れる会社はたくさんあります。

私の場合、Javaのサーバーサイドのエンジニアを長い間やってきたので、

「このままずっと、一生Javaやってくのかなぁ…」

と思っていたんですが、C#とUnityを独学してゲームのクライアントサイドエンジニアに転身できた経験によって、エンジニアとしての可能性が広がりました。今後も何度でも新しい言語・技術にチャレンジできるメンタリティになったんです!

使いたい言語が今いる会社では使えないという方は転職活動を始めてみることをおすすめします。転職活動するといろいろな会社や仕事があることを知れて、視野が広がってエンジニアとしての可能性を拡張してくれるはずです!

転職はやってみると思ってたより簡単!

私自身3回ほど転職してるんですが、思ってたより簡単で、転職エージェントを使ったらあっという間でした。

エージェントが応募先候補の選出から、面接の日程調整までやってくれるので、こちらから動かなくても半分くらい自動的に進む感じで楽でした。しかも今は好景気で売り手市場なので転職するのにちょうど良い時期です。

レバテックキャリアっていうエージェントがおすすめです。

このサービスを運営しているレバレジーズという会社はシステム開発もやっているので、現場の仕事をよくわかってくれてますし、ヒカ☆ラボというIT系の勉強会なども主催していたりteratailというプログラマー専用の質問サイトを運営してて好感が持てます。求人案件もWebやスマホの面白い仕事が多いのでいいと思います。

あとホームページ見ると分かるんですが、若くて美人の担当者が多いのもナイスなんです!私の場合(たぶんあなたも)、担当者が美人だと転職活動のモチベーションめちゃ上がりますからね笑

なので、レバテックキャリアのホームページ見てみてください。「ホントだ、美人じゃん♪」ってきっと思うはずです笑

地方在住や、エンジニア未経験の人にも使える転職エージェントがある!

レバテックキャリアは東京・大阪近郊のエンジニア経験者向けサービスなので、地方在住の方や、エンジニアの仕事が未経験の方には、DODAがおすすめです。

未経験の人はサポート対象外のエージェントが多いんですけど、DODAは未経験者の転職も支援してくれます。以前エンジニア未経験の友達にDODAを教えてあげた所、ちゃんと登録できて未経験可の求人を紹介してもらえました。未経験の人こそエージェントから職務経歴書の作り方や面接の仕方のレクチャーを受けた方がずっとうまくいくと思います。

DODAは全国に拠点があるので地方在住の方もご利用いただけます。

人脈がなくてもフリーランスになれる!

フリーランスになりたい方にはギークスジョブがおすすめです。人脈がなくてもギークスジョブに登録するだけで案件を紹介してもらえます。案件の希望(どんな技術を使っているか、残業が少ないこと)等も聞いてくれるので、やりたい仕事が出来ます。対象地域は東京・大阪・名古屋・福岡近郊です。

「派遣社員」なら正社員とフリーランスのいいどこ取り!

フリーランスになりたいけど、確定申告とかめんどくさいなという方には派遣社員がおすすめです。

派遣ってネガティブなイメージありますが、ITエンジニアの派遣社員ならやりたい仕事を選べて、給料も悪くないですし、確定申告や年金、健康保険も派遣会社が入ってくれるのでいいと思います。

私の先輩でフリーランスになった後、派遣社員になった人がいるんですが「自由かつ煩わしい手続きがなくて最高」って言ってました!パーソルテクノロジースタッフに登録するだけで簡単に派遣社員になれます。

私(やまろう)への相談メールも募集中

転職や仕事術、勉強法等について質問や相談がありましたら、以下のメールフォームからぜひご連絡ください。
経験者から見れば簡単に解決できる相談って多いのでお気軽にどうぞ!こう書いてもなかなかメールくれる人って少ないのでホント気軽にメールしてくれると嬉しいです。

メールアドレス (必須)

相談内容

たまに間違ったメールアドレスを入力されていて返信できない場合があります。一週間経っても返信がない場合、メールアドレスを確認の上、再度送信をお願いします。

エージェントを使った方が転職活動は楽です

東京・大阪近郊のイケてるIT企業に転職したい人には『レバテックキャリア』

 東京・大阪近郊のエンジニア経験者向け転職サービスです。

このサービスを運営しているレバレジーズという会社はシステム開発もやっているので、現場の仕事をよくわかってくれてますし、ヒカ☆ラボというIT系の勉強会なども主催していたりteratailというプログラマー専用の質問サイトを運営してて好感が持てます。求人案件もWebやスマホの面白い仕事が多いのでいいと思います。

あとホームページ見ると分かるんですが、若くて美人の担当者が多いのもナイスなんです!私の場合(たぶんあなたも)、担当者が美人だと転職活動のモチベーションめちゃ上がりますからね笑

エンジニア未経験の方や地方在住の方にはDODAというエージェントをおすすめします。

エンジニア未経験の方や地方在住の方には『DODA』

全国の求人を扱っていて、しかもITエンジニア未経験の人にも転職支援をしてくれるエージェントです。

未経験の人はサポート対象外のエージェントが多い中、DODAは未経験者を支援し転職を成功させています。未経験の方こそエージェントから職務経歴書の作り方や面接の仕方のレクチャーを受けた方がずっとうまくいきます。

『派遣社員』なら正社員とフリーランスの『良いとこ取り』!

  • 「フリーランスになりたいけど、確定申告とかめんどくさいな」
  • 「定時帰りできる職場や、時短勤務がしたい」

という方には派遣社員がおすすめです。

派遣ってネガティブなイメージありますが、ITエンジニアの派遣社員ならやりたい仕事を選べて、給料も悪くないですし、確定申告や年金、健康保険も派遣会社が入ってくれるので、実はとてもいい選択なんです。

 - 技術