SoutoIkedaの気まぐれブログ

書籍の感想を気まぐれにアウトプットするブログ

【6/16 アウトプット】「ITエンジニアリングの基本」からプログラミング言語のトレンドを調査する。

 


www.benfrederickson.com

今回は、上記の記事を用いてプログラミング言語のトレンドについてアウトプットしていきたいと思います。よろしくお願いします。

 

上記の資料では、各プログラミング言語ごとのMAU(月間アクティブユーザー数)の推移を追っています。

Every time a user interacts with a repository I'm counting that user as using the language of that repository - and then aggregating this each month to calculate how many Monthly Active Users (MAU) each language has.

上記の英文より、より詳細に言うならば、エンジニアがレポジトリ(データベースのようなもの)とやり取りをする時に用いるプログラミング言語が何かを調査し、トレンドを追っています。では、①人気が横ばい②人気が下降局面③人気が上昇局面の

3つに分けて見ていきましょう。

 

1)人気が横ばいの言語

f:id:Souchan:20200616192606p:plain

【図】人気が横ばいのプログラミング言語

縦軸のMAU率の計算方法などは省略します。おおまかなMAUの推移が分かればOKです。JSは、2013年中頃にピークを向かえ、やや下降気味だがまだ高いMAUを誇っている。ほー。Python/Javaは横ばいか。なるほど。

 

2)人気が下降局面の言語

 

f:id:Souchan:20200616194404p:plain

【図2】トレンドが下降局面にある言語

 Objective-CはSwiftが台頭しているからまだ分かる。が、初心者にも優しく日本語のドキュメントも多いRubyの人気が落ちている。。PHPも。。

 

3)人気が上昇局面にある言語

f:id:Souchan:20200616195014p:plain

【図3】人気が上昇局面にある言語

 Go/TSの伸びがすごいですね。

 

Go is great for writing concurrent server-side programs

(Goは、並列プログラムを書くのに優れている。)

 

並列プログラムは、簡単に言えば複数の命令を同時に生成することですね。こういうのも、人気が上昇している要因なのでしょう。

 

4)まとめ

トレンドを矢印でまとめると、

【フロントエンド】JS(→)TS(↑)

【サーバーサイド】Java/Pyhton/C(→) Ruby/PHP(↓)Go(↑)

【モバイル】Kotlin(↑)Objective-c(↓)

このような感じになります。今日とある企業の面談に行ってきたのですが、そこの社長が言っていたのは、「プログラミング言語フレームワークのトレンドを日々追うのは重要。すぐ移り変わるからね。」とのことです。私も日々、トレンドを調査していきたいと思います。ありがとうございました。