2018年IoT開発者調査
昨年も紹介したように今年も「Eclipse IoT Working Gourp」主催による2018年IoT開発者調査が行われました。IoT開発者調査の結果から、IoT分野で広く使われているプログラミング言語やOSなど、IoT分野のトレンドを把握することができます。
昨年のIoT開発者調査は、以下を参照してください。
昨年の傾向と比較してみると良いでしょう。
IoT開発者調査とは
今回行われた調査は、「Eclipse IoT Working Gourp」主催による第四次IoT開発者調査です。この調査の目的はIoT開発者の現状を分析し、IoT分野のトレンドや状況、そして傾向を把握することです。
第四次とあるようにIoT開発者調査は、2015年から毎年行われています。
今回の調査は2018年1月24日〜2018年3月5日まで行われ、IoT開発者が任意でアンケートに参加し、502件の回答を得ました。
アンケートには、例えば「IoTの開発にどのOSを利用していますか?」といった質問が並びます。
早い話、意識調査ですね。
調査結果
調査結果は、以下で公表されています。IoT開発における懸案事項
IoT開発における懸案事項(特に注意を払う点)を見てみましょう。懸案事項の割合では、1位が「セキュリティー」で39.0%、2位が「データ収集及び分析」で18.5%、3位が「ハードウェアとの統合性」で15.5%、同じく「接続性」で15.5%となっています。
セキュリティーに対する脅威及びセキュリティーの確保が第一に挙げられています。
また、2016年から2018年のIoT開発における懸案事項の推移は以下のようになっています。
どの年でもセキュリティーが第一になっていますが、2018年はデータ収集及び分析に大きな伸びが見られます。
その一方で相互運用性に対する懸念は年々減少傾向にあります。
プログラミング言語の割合
次にIoT開発で利用されるプログラミング言語の割合を見てみましょう。プログラミング言語の割合では、1位が「Java」で66.5%、2位が「C言語」で56.9%、3位が「JavaScript」で47.1%となっています。
昨年は3位が「C++」でしたが、「JavaScript」の伸びが見て取れます。
さてIoTと一口に言っても、組み込みだったりクラウドだったりと様々なジャンルがあります。
開発のターゲットにより、ハードウェアや環境の制約が大きく異なります。
ここでは以下のジャンル別に、プログラミング言語の割合を見てみましょう。
- 組み込み(ハードウェアやリソースに制約があるデバイス)
- IoTゲートウェイ
- IoTクラウド
1.組み込み(ハードウェアやリソースに制約があるデバイス)
組み込み分野では、1位が「C言語」で53.7%、2位が「C++」で35.4%、3位が「Python」で20.2%となっています。昨年の1位と2位は変わりませんが、割合は僅かに減少しています。
昨年3位だった「Java」も僅かに減少しています。
また「アセンブラ」は大きく減少しています。
その一方で「Python」や「JavaScript」が僅かな伸びを見せています。
2.IoTゲートウェイ
ゲートウェイの分野では、1位が「Java」で42.8%、2位が「Python」で30.3%、3位が「C言語」で21.0%となっています。昨年と比べると「C言語」や「C++」が大きく減っています。
代わりに「Java」や「Python」、「JavaScript」が伸びています。
特に「JavaScript」の伸びは顕著です。
3.IoTクラウド
クラウドの分野では、1位が「Java」で53.2%、2位が「JavaScript」で37.5%、3位が「Python」で29.3%となっています。昨年と比べると「Java」、「JavaScript」、「Python」が伸びています。
OSの割合
次にOSの割合を見てみましょう。「Linux」が圧倒的な割合を占めており、その値は71.8%です。
プログラミング言語と同様に、IoTには組み込みなど複数のジャンルがあります。
開発のターゲットにより、ハードウェアや環境の制約が大きく異なります。
ここでは以下のジャンル別に、OSの割合を見てみましょう。
- 組み込み(ハードウェアやリソースに制約があるデバイス)
- IoTゲートウェイ
1.組み込み(ハードウェアやリソースに制約があるデバイス)
組み込み分野では、1位が「Linux」で38.7%、2位が「OSなし/ベアメタル」で19.6%、3位が「FreeRTOS」で19.3%となっています。この分野でも「Linux」が大きな割合を占めていますが、小型のマイクロコントローラーに焦点をあてた「FreeRTOS」や「OSなし/ベアメタル」を組み合わせると、「Linux」に肩を並べる割合になります。
つまり「Linux」がすべての組み込みデバイスに対して必ずしも最適解にはならないということを示唆しています。
2.IoTゲートウェイ
ゲートウェイの分野では、1位が「Linux」で64.1%、2位が「Windows」で14.9%、3位が「その他のOS」で6.1%となっています。IoTで使われているLinuxディストリビューションの割合
最後にIoTで使われているLinuxディストリビューションの割合を見てみましょう。1位が「Raspbian」で43.3%、2位が「Ubuntu/Ubuntu Core」で40.2%、3位が「Debian」で30.9%となっています。
「Raspbian」と「Ubuntu」は、いずれも「Debian」がベースになっているOSであり、「Debian」含めこれらのOSはいずれも「Snap」パッケージを利用できます。
「Snap」はセキュリティーや堅実性、そしてバージョン制御の容易性に着目して開発された次世代のパッケージであり、これらの要素はIoTの要件に非常にマッチしています。
特に「Ubuntu Core」はOS自体が「Snap」で構成されており、IoTの懸案事項で大きな割合を占めるセキュリティーに対し、サンドボックスなど高度な安全性を提供します。
他にも様々な統計データが
他にもここで紹介していない様々な統計データが公表されています。詳細はリンク先を参照してください。