DUICUO

知っておくべきオープンソーステクノロジー トップ10

No.1 DockerDevOps

ビッグデータとクラウドコンピューティングという二つのトレンドにより、コンテナ技術への関心が大幅に高まっており、Dockerはコンテナ化分野のリーダーであることは間違いありません。Rightscaleの2017年版「State of the Cloud」レポートでは、企業の70%がDocker技術を既に使用中または使用予定であると回答しており、DevOpsツールを構築する企業にとってDockerが最優先事項であることも調査結果から明らかになりました。

Docker を使用すると、開発者はアプリケーションとその依存関係を軽量のコンテナにパッケージ化できるため、アプリケーションのモビリティが容易になり、ハイブリッド クラウド環境で非常に役立ちます。

No.2 Kubernetes

Dockerはコンテナの使い方を教えてくれますが、Kubernetesはコンテナの管理に優れています。Googleが最初にリリースしたこのコンテナ構成ツールは、Amazon、Microsoft Azure、Google Cloud Platformが提供するコンテナサービスを含む、コンテナ関連のソリューションやサービスの領域に進出しています。当初はSwarmと呼ばれるスタンドアロンのオーケストレーションツールをサポートしていたDockerでさえ、今ではKubernetesテクノロジーと統合されています。

世界有数のIT分析企業であるForresterのアナリストは、「Kubernetesはコンテナ構成技術において絶対的な優位性を持っている」と断言しています。一方、GitHubの2017年Octoverseレポートでは、Kubernetesはオープンソースプロジェクトの中で2番目にレビュー数が多く、最も議論されているリポジトリでした。

No.3 ギット

Gitは、圧倒的な差をつけて最も人気のあるバージョン管理ソリューションとなりました。2017年のStack Overflow開発者調査によると、開発者の69.2%がGitを使用しており、開発者の間で最も人気のある選択肢となっています。一方、調査で2番目に人気のシステムであるSubversionの使用率はわずか9.1%でした。

オープンソースコミュニティでは、Gitテクノロジーを基盤とするGitHubの台頭により、Gitのユーザー層が拡大しました。オープンソースを採用する企業が増えるにつれ、Gitも採用されるようになっています。

第4位 JavaScript

これまでご覧になったレポートの中でも、JavaScriptは間違いなく世界で最も人気のあるプログラミング言語の一つです。Stack Overflowの調査では、開発者の間で最も人気のあるプログラミング言語として頻繁にランクインしており、開発者の62.5%が使用しています。さらに、JavaScriptはGitHubで最も使用されているプログラミング言語であり、同サイトで2位のPythonのほぼ2倍の使用頻度を誇っています。PYPLのプログラミング言語人気指数(Googleでの言語チュートリアル検索頻度)ではJavaScriptは4位、TIOBE指数(人気検索エンジンにおけるプログラミング言語のクリック数)では6位にランクインしています。

JavaScript は Web 開発分野を支配しているだけでなく、バ​​ックエンドやモバイル開発にも進出しています。

No.5 Node.js

JavaScript の人気は、Node.js の普及拡大に一因があります。Node.js のランタイム環境により、開発者はサーバーサイドのコードを JavaScript で記述できます。つまり、開発者は Web アプリケーションのフロントエンド(クライアントに表示される部分)とバックエンド(サーバー上で実行される部分)を同じ言語で記述できるのです。

GitHub Octoverseのレポートによると、Node.jsは最もレビューされたプロジェクトと最も議論されたリポジトリの両方でランクインしました。Stack Overflowの調査によると、開発者の47.1%がNode.jsを使用しており、62.1%の開発者がそのアーキテクチャを好んでいることから、Node.jsは最も人気のあるアーキテクチャ、ライブラリ、その他のテクノロジーの中で2位にランクインしました。さらに、Node.jsは開発者が最も所有したいテクノロジーであることは間違いありません。

第6位 React/React Native

Facebookが開発したReactは、ユーザーインターフェース開発用のJavaScriptライブラリです。関連プロジェクトであるReact Nativeでは、開発者はReactを使用してクロスプラットフォームのネイティブモバイルアプリケーションを作成できます。

ReactとReact Nativeは比較的新しい技術ですが、その採用率は既に非常に高くなっています。GitHubの報告によると、Reactは最もフォークされているプロジェクトの1つであり、React Nativeはオープンソースプロジェクトの中で2番目に多くの貢献者を擁しています。Stack Overflowの調査では、開発者のわずか19.5%がReactを使用しているにもかかわらず、66.9%がこのライブラリを気に入っており、Reactは同分野で最も人気のある技術となっています。Indeedによる2018年の最も急成長している技術職のスキルに関するレポートでは、Reactがトップにランクされました。さらに、求職者によるReact関連職の検索は313%増加し、雇用主による関連スキルを持つ候補者の検索は229%増加しました。

No.7 角張った

Indeedの急成長求人検索リストでも、Angularは上位にランクインしています。求職者によるAngular関連職種の検索は50%増加し、雇用主によるAngularスキルを含む履歴書の検索は6%増加しました。また、Stack Overflowの調査では人気度で2位、いいね数で6位にランクインし、2番目に求められているスキルとなっています。さらに、GitHubのレポートでは、最も貢献度の高いプロジェクトの一つとなっています。

Node.jsやReact/React-Nativeと同様に、AngularもJavaScriptエコシステムの一部です(ただし、Angularの最新版はTypeScriptをベースにしており、JavaScriptにコンパイルされています)。一般的に、Angularはネイティブモバイル、Web、モバイルWeb、ネイティブデスクトップ向けのクロスプラットフォームアプリケーションを構築するためのオープンソースプラットフォームです。

第8位 Hadoop

Hadoopは、分散システムのクラスター内で大規模データセットを処理するために広く使用されているオープンソースツールであり、大規模データソリューションにおいて非常に人気があります。Stack Overflowのレポートでは、Hadoopは最も愛されているテクノロジーと最も求められているテクノロジーの両方のリストに含まれています。

しかし、多くの企業が自社のニーズにより適した他のテクノロジーの検討を始めていることを考えると、一部のアナリストは、Hadoopがビッグデータ・エコシステムにおける現在の重要な地位をどれだけ長く維持できるのか疑問視し始めています。こうした課題にもかかわらず、Hadoopは2018年も企業が利用する中核的なオープンソース・プロジェクトの一つであり続けると思われます。

No.9 スパーク

様々な新興ビッグデータ技術の中で、Sparkはますます重要性を増しています。Hadoopと同様に、現在はApache Software Foundationによって管理されていますが、Hadoopの標準MapReduceエンジン(ビッグデータの並列処理のためのコンピューティングモデル、フレームワーク、プラットフォーム)よりもはるかに高速です。そのため、多くのチームが、リアルタイムストリーミングデータの処理を必要とするアプリケーションでHadoopとSparkを併用しています。

Indeedのデータによると、求職者によるSpark関連の求人検索は39%増加し、採用ニーズのある企業によるSparkスキルを持つ求職者の検索も14%増加しました。SparkはOctoverseのレポートで最もレビュー数の多いプロジェクトの一つであり、Stack Overflowの人気スキルランキングでも4位にランクインしています。

第10位 TensorFlow

Digital Oceanの最新レポートによると、開発者の83%がまだ人工知能(AI)または機械学習(ML)技術を活用していないことが示されています。しかし、AI/ML技術を活用していない開発者のうち、72%が来年から学習を開始する予定です。

これらの開発者は、Google Brainチームが開発したオープンソースの機械学習ライブラリであるTensorFlowを検討する可能性が高いでしょう。複数の大手パブリッククラウドプロバイダーが既にTensorFlowベースのサービスを提供しています。GitHubのレポートによると、TensorFlowは今年最もフォークされたプロジェクトであり、貢献者とレビュー数の多いプロジェクトでも上位にランクされています。