GraphQLは「オワコン」「流行らない」のか？

# はじめに
今回はタイトルの通り、「**GraphQLは「オワコン」「流行らない」のか？**」という問に対して、個人的に調査した内容となります。
今回のタイトルで記事を書くことにしたのは、Googelの検索フォームに「GraphQL」と入力したところ、サジェストに「Graphql 流行らない」「Graphql オワコン」と表示されたことがきっかけです。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/177076/64839677-5937-dfdd-49d0-26ed91116dfb.png)
(試しにシークレットモードで入力してもサジェストされるので、私の検索履歴などのパーソナル情報によるバイアスはかかっていないはずです)

「Graphql オワコン」での検索結果TOPに「[GraphQLはオワコンですか?これからはtRPCの時代ですか?REST APIの位置づけは何ですか?](https://mond.how/ja/topics/ml5asqu9ebwsqbc/fgfum6apufjgn2j)」というページがあったので読んでみました。

https://mond.how/ja/topics/ml5asqu9ebwsqbc/fgfum6apufjgn2j

回答者はNodejsユーザグループ代表の古川さんで「GraphQLをオワコンと称するにはまだ早い」と回答されています。
私も同じ意見ですが、オワコンではないという根拠は開発現場やコミュニティ活動の経験を通した肌感覚でしかないのかなと思っています。
そのため、オワコンではないことを示すために具体的なデータを示したいと思った次第です。

<br>

:warning: 記事の内容は個人としての見解であり、所属する組織とは関係ありません。


# 「オワコンでないこと」「流行っていること」の評価方法
今回の調査で「オワコンではない」「流行っている」ことをどう定義するのかについてです。
「オワコンではない」「流行っている」という事象について絶対的な基準はなく、個々人の属性によって異なる評価がされるものであると考えています。
そのため、何かしらの基準を設定しその基準をに達していれば「オワコンでないこと」「流行っていること」と定義したいと思います。
今回の調査では「検索数」「利用社数」などの調査観点について年単位での推移を調査することにします。
**強引ですが、年単位での推移が右肩上がりであれば「オワコンではない」「流行っている」とします**。　

![評価基準.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/177076/1b031222-23e6-edf0-9e08-55d3388f2def.png)

それだけで「流行っている」「オワコンだ」と言い切れないのではという意見があるのは重々承知しています(私もこの基準で正確に評価できると思っていないです)。
ただ、技術トレンドの流行度合いをどう測定し評価するのかについて考えるとそれだけで論文が書けるのではと思うくらい難しいテーマだと思っています。
なので今回は前述の単純な基準をベースに評価を行います。

# 調査観点と調査方法
「オワコンでないこと」「流行っていること」の評価基準を明確化したので、次はどの調査観点での推移を確認するのかについてです。
下記表に調査観点と調査方法を示します。

| 調査観点 | 調査内容 |調査方法 |
|:------|:-----|:---------|
|検索数 | GraphQLというワードの検索数の推移を評価  | Google Trends |
|GraphQL関連ツール数 | GraphQLの開発をサポートするツール数の推移を評価 | graphql-landscape |
|GraphQL関連サービス数 | GraphQLの利用をサポートするサービス(SaaS等)数の推移を評価 | graphql-landscape |
|GraphQL採用企業数 | GraphQLを利用する企業数の推移を評価  | graphql-landscape |
|GraphQL Foundationメンバー企業数 |GraphQLの開発やコミュニティ活動に投資している企業数の推移を評価 | graphql-landscape |
|GitHub Star | GithubのGraphQL関連リポジトリにおけるstar数の推移 | GitHub |

検索数は皆さんご存知の「[Google Trends](https://trends.google.co.jp/trends/)」を利用することで、検索数の推移を確認します。

GraphQL関連のツール数や利用企業数などはgraphql-landscapeからその推移を確認します。
graphql-landscapeはGraphQLエコシステムを探索するためのマップとなります。
下図のようにGraphQLに関するツールやサービス、利用企業、財団のメンバーなどの一覧を確認できます。
この一覧についてGitHubのヒストリーからどのように推移したのかを調査します。

![graphql-landscape.png](https://landscape.graphql.org/images/landscape.png)
(引用：https://landscape.graphql.org/)

https://github.com/graphql/graphql-landscape

GitHubのStar数の調査には[GitHub Star History](https://star-history.com/)を利用します。
このサイトにリポジトリのURLを入れるとStar数の推移をグラフで表示してくれます。

https://star-history.com/


# 調査結果
## Google Trends
Google Trendsで「GraphQL」を調べた結果は以下のとおりです。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/177076/54c1ab53-a589-9779-b064-13af6b43cea7.png)

GraphQLのリリースが2015年頃なので、2014年からすべての国を対象とした結果です。
2020年頃にガクッとグラフが凹んでいますが、2021年にまた急な傾きで伸びています。
ただここ数年は上がったり下がったりで推移しており、線形回帰するとほぼ横ばいといったところでしょうか。

ガートナー社は2021年にパイプサイクルでGraphQLについて「黎明期」から「過度な期待のピーク期」に差し掛かっていると評価しています。

https://www.sbbit.jp/article/cont1/93872

仮に検索数の推移はガートナーのパイプサイクルと何かしらの相関があるのであれば、2021年の過度なピーク期にあるとの評価からGraphQLが注目され検索数が一気に伸びた可能性があります。
記事執筆時点の2023年では幻滅期に入ってい可能性もあり、GraphQLに懐疑的な意見（本記事の発端となったオワコンサジェストのように）が出てきたことも検索数が横ばいであることの一因かもしれません。
今後、GraphQLが幻滅期を脱した場合は緩やかな右肩上がりで推移するかも・・・しれませんね。

また、興味深いことに地域別だと中国が1位となっています。
中国だと検索エンジンに百度を利用するのが一般的かと思うのですが、以外にGoogleで検索しているみたいです。
単純に人口が多いからか、エンジニアはGoogleを使う（VPN必須なんですかね？）のが一般的なのかはわかりません。
中国国内での開発に詳しい方がいれば少し聞いてみたいですね。

## graphql-landscape
「GraphQL関連ツール数」、「GraphQL関連サービス数」、「GraphQL採用企業数」、「GraphQL Foundationメンバー企業数」の推移は下図のとおりです。

![graphql-landscape.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/177076/2e11250e-5557-d98f-1855-08d978edf1e2.png)

graphql-landscape自体は2019年頃に作られたリポジトリであるため、期間は2019年～2023年までとなります。

**GraphQL関連ツール数**
GraphQL関連ツール数は2年間隔で増えているいます。
ツールはすぐに増えるものではないと思うので、停滞しているとも言い難いデータかと思います。
また、既存のツールで十分開発ができるのであれば、わざわざ新しいツールを作るという動機も生まれないと思います。
そのため、もしかするとツール数は今後もあまり大きく増えない可能性があります。

**GraphQL関連サービス数**
GraphQL関連サービスの数は2019年から順調に伸びていることがわかります。
GraphQLをビジネスチャンスと捉えており、GraphQLソリューションを提供する企業が増えていることが伺えます。

**GraphQL採用企業数**
2019年の時点で多くの企業に利用されています。
有名どころでは、X(旧Twitter)、Shopify、GitHub、Rakutenなどの名前が確認できます。
ただ2020年以降は緩やかな伸びで、2023年は前年から1社増えた程度となります。
利用企業数が順調に伸びているとは言い難いデータですね。

ただ実際には、graphql-landscapeに利用を表明していない企業も多くあると思います。
そのため、GraphQLを利用している実際の企業数はこのデータの件数を上回るはずです。

**GraphQL Foundationメンバー企業数**
GraphQL Foundationメンバー企業数は意外な結果になりました。
2019年から2022年までは順調にメンバー企業が増えていましたが、2023年で前年から5社減となります。

差分を確認したところ、メンバーから脱退した企業は下記のとおりです。

* Blockchain Technology Partners, Inc.
* Fauna, Inc.
* Indeed, Inc.
* Meta Platforms, Inc.
* StepZen, Inc.
* Twitter Inc.

そして増えた企業が1社（Platformatic）あり、トータルの増減が-5となります。
StepZen, Inc.は今年2月にIBMに買収されたみたいです。
メンバーにはIBMの名前もあり、2重投資になるためStepZen, Inc.は脱退といったところでしょうか。

https://jp.newsroom.ibm.com/2023-02-14-IBM-Acquires-StepZen-to-Help-Enterprises-Get-More-Business-Value-from-Their-Data-and-APIs

一方で、日本でも有名なIndeed、Meta、X(旧Twitter)が抜けていることに注目です。
Xはイーロン事変の影響している可能性がありますが、他の2社はどういった理由から脱退したのかが気になります。
特にGraphQLを生み出したMeta(Facebook)が脱退というのはインパクト大です。
各社のアナウンスは未調査ですが、今後他のメンバー企業も脱退するようなことがあればGraphQLの将来性については懐疑的にならざる得ないかもしれないです。

## GitHub Star
今回は下記のGraphQL関連のGithubリポジトリの推移を調査しました。

* [graphql/graphql-spec](https://github.com/graphql/graphql-spec)
* [graphql/graphql-js](https://github.com/graphql/graphql-js)
* [apollographql/apollo-client](https://github.com/apollographql/apollo-client)
* [apollographql/apollo-server](https://github.com/apollographql/apollo-server)

[graphqlプロジェクト](https://github.com/graphql)からStar数が多い2つのリポジトリと、GraphQL関連ツールとして有名で多く利用されている[Apollo](https://github.com/apollographql)からClientとServerを調査対象とします。
各リポジトリにおけるGitHub Starの推移は下図のとおりです。

![star-history-2023123.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/177076/3e8dc5db-add2-c077-6994-649b907540fd.png)

Client関連のリポジトリは順調に右肩上がりでStar数が増えていることがわかります。
graphql-specやapollo-serverは右肩上がりであるものの、ここ数年は傾きが緩やかであり停滞気味といったところでしょうか。
多くの開発者はCleintにおけるGraphQLの利用に興味があり、ServerサイドやGraphQL本体の仕様策定にはあまり興味がないということかもしれません。
より深い考察のためには、Star数だけではなくコミット数やコミッターの人数などの調査が必要だと感じています。

graphql-landscapeに登録されているGraphQL関連ツールのGitHub Starの推移をプロットすることで勢いのあるツールの調査も可能なのではと思いますが、それは別の機会に確認したいと思います。

# 結論
各調査観点における調査結果をまとめです。

| 調査観点 |調査結果 | 評価|
|:--------|:-------- |:--:|
|検索数 | 検索数は停滞気味 | △ |
|GraphQL関連ツール数 |2年スパンでは伸びているが年単位では停滞気味  |△ |
|GraphQL関連サービス数|順調に伸びている |◯ |
|GraphQL採用企業数 |順調とは言い難いが一応伸びている | ◯ |
|GraphQL Foundationメンバー企業数 |有名企業が脱退 | ✕|
|GitHub Star | 右肩上がりであるものの、仕様やサーバは若干停滞気味 |◯ |

調査前はすべてのデータが順調に右肩上がりだろうと思っていたので意外な結果に驚いています。
それでは、「GraphQLは「オワコン」「流行らない」のか？」に関する私の結論です。

* **2019年～2022年までは注目されており、関連サービスやツールの開発が活発であるため流行していると言える。**
* **2023年も利用されておりオワコンではないが、財団から大手企業が抜けており、今後も流行が続くかという点については注視が必要。**

以上となります。

# 最後に
技術トレンド調査の専門家ではないのですが、GraphQLの動向について調査しました。
今回はAdvent Calnderにエントリーするにあたり、テーマ選定から調査、記事執筆まで約2日でやりきったので深い調査や考察ができていません。
今後余裕があればグラフの回帰解析や各ツールの開発・利用動向、日本国内に閉じた動向など様々な観点での調査ができればと思います(あまり期待はしないでください・・・)。

また、GraphQLに関わらず技術に関する流行度合いや将来性をどのように評価するのかについて何かしらのモデル化ができれば面白いのではと思っています。