連載 [第2回] :
  GitHub Universe 2023レポート

GitHub Universe 2023からShopifyが活用するCopilotのセッションを紹介

2024年2月21日(水)
松下 康之 - Yasuyuki Matsushita
GitHub Universe 2023から、Shopifyがアーリーアダプターとして活用するCopilotのセッションを紹介する。

GitHub Universe 2023から、ECサイトのバックエンドを担うプラットフォームであるShopifyのCopilotのユースケースを解説したセッションを紹介する。プレゼンターはShopifyのエンジニアリンググループのトップであるFarhan Thawar氏だ。

●動画:Empowering devs with AI: How Shopify made GitHub Copilot core to its culture

ShopifyがCopilotをどのようにコアに組み込んでいったのか? という内容

ShopifyがCopilotをどのようにコアに組み込んでいったのか? という内容

ShopifyはGitHub Copilotの最も初期のベータユーザーとしてさまざまな部署で活用していることを解説するセッションだが、筆者が最も興味深いと思ったのはShopifyではデベロッパーのパフォーマンスを定量的に計測しないという部分だ。Thawar氏によればプログラミングは芸術と科学の双方にまたがる仕事であり、定性的な評価を下す一方で、書いたコードの行数などの「量」では評価しないという。Copilotは、その部分にペアプログラミングのツールとして深く関わってきていることをセッションの後半で解説している。

Shopifyの概略を説明。ECサイトのバックエンドを支えるサービス

Shopifyの概略を説明。ECサイトのバックエンドを支えるサービス

ここからShopifyのビジネスについて概略を説明。ECサイトのバックエンドを支えるサービスを提供するのがShopifyの根幹だが、Black FridayやCyber Mondayなどのタイミングには通常のトラフィックの数十倍を超えるアクセスが集中するという特異なビジネスでもある。

Shopifyのチェックアウトに関する解説

Shopifyのチェックアウトに関する解説

世界で最もコンバージョン率が高く、秒間1,500万リクエストを処理し、1分につき5,000回のチェックアウトが最繁忙期には7倍以上のスパイクとなるなどの概略を説明した。

GitHubの利用実績を紹介。約4,000人のエンジニアが使うプラットフォーム

GitHubの利用実績を紹介。約4,000人のエンジニアが使うプラットフォーム

そしてGitHubのユーザーとしては社内の約4,000人のエンジニアが利用し、約300の公開リポジトリー、約5,000の非公開リポジトリーを持ち、Ruby、Java、Pythonなどのコードが1,000万行、1,500回の本番環境へのデプロイメント、月間10万回のコミットなどの数値を紹介し、GitHubのヘビーユーザーであることを語った。

SaaSの企業においてどこにAIを活用するのが最も効果的かを説明

SaaSの企業においてどこにAIを活用するのが最も効果的かを説明

そしてAIについてはさまざまな利用シーンが考えられるとして、セールスやマーケティングなどにおける利用からその効果を想定しているが、最も効果があると考えたのがエンジニアリングチーム、つまりThawar氏の統括する部門であるという。

早くCopilotをShopifyのエンジニアに使わせたいという気持ちが表されているメールを紹介

早くCopilotをShopifyのエンジニアに使わせたいという気持ちが表されているメールを紹介

次のスライドではCopilotについて2021年12月にThawar氏がCEOのDohmke氏に送ったメールを紹介し、どうしたらShopifyのエンジニア全員がCopilotを使えるようになるのか? を尋ねている。このタイミングは前CEOのNat Friedman氏が同年11月に退任し、Dohmke氏が新CEOとして就任した直後であることが文面からもわかる。そのぐらいにShopifyはCopilotを使ってみたかったという気持ちの表れだろう。

「どうして他の生成型AIではなくGitHub Copilotなのか?」を解説

「どうして他の生成型AIではなくGitHub Copilotなのか?」を解説

ここで他の生成型AIの実装についてもリサーチを続けながら、どうしてGitHubのAIを選択したのかを説明。すでにGitHubを信頼のできるパートナーとして利用していることから信頼できると考えたこと、GitHubの開発スピードがこれからも品質を向上させると考えたことなどが挙げられているが、何よりもShopifyにとってAIは重要だと考えていることがポイントだろう。

Copilotの導入の経緯を説明

Copilotの導入の経緯を説明

ここでは2022年1月からテックプレビューという形でShopifyがCopilotの利用を始めたこと、Copilot Chatを経て2023年10月の段階でCopilot Docsまで使っていることを説明。Thawar氏がDohmke氏にメールを送った直後にShopifyの希望通り、大規模なアーリーアダプターとしての利用が始まったことがわかる。

新技術を取り入れる時の評価のポイントを説明。デベロッパーの生産性を定量的には評価しない

新技術を取り入れる時の評価のポイントを説明。デベロッパーの生産性を定量的には評価しない

個人的にはこのスライドが最も衝撃的だった。ここでThawar氏はデベロッパーの生産性について「Shopifyは定量的には評価しない、なぜならプログラミングは芸術と科学のどちらかと言えば芸術の分野に属する仕事であり、芸術を定量的に評価することはできない、感性でのみ評価するべきだ」と考えていることを説明した。日本ではまだコードの量や時間で生産性を測りたがる場合も多いと思われるが、その常識を覆す内容となっている。特に「デベロッパーが幸せと感じるかどうかが最も重要だ」という部分に注目したい。つまり数値では測れないがデベロッパーが新しいツールを使うことで幸せを感じるかどうかを定点観測することで、そのツールの評価をしようというアプローチだ。

ペアプログラミングの常識を変えるCopilot

ペアプログラミングの常識を変えるCopilot

ここでCopilotのコンセプトでもあるAIによるペアプログラミングについても言及し、ペアプログラミングであれば半分のコードをペアが書くことになるが、それがツールの場合も同じか?という疑問に対して「そうはならない。どちらかと言えば半分以下になるべきだ」というツイートを紹介。ここで人間がペアを組むよりもAIとペアになることで人間が書くコードの量は減るべきだと説明。実際にCopilotを使うことでコードがシンプルになり、人間が実際に書くコードは減ると説明した。

そして2022年から使い始めたCopilotが定量的にどのくらい使われているのかを説明。月間約2,000人の利用者、Rubyを使った開発に最も使われていることなどを示した。

ShopifyでのCopilot利用の概要。約4,000人のエンジニアの半分が使っている計算

ShopifyでのCopilot利用の概要。約4,000人のエンジニアの半分が使っている計算

冒頭で約4,000人のエンジニアが在籍すると説明したことから考えると、約半分のエンジニアがCopilotを使っているということになる。そしてGitHubと同様、最も使われているプログラミング言語がRubyであるとことも考えると、社内のCopilotを使っているエンジニアはかなりハッピーになっていることが予想される。

Copilotの評価を定点観測。年度の中間と最後に違いが出ている

Copilotの評価を定点観測。年度の中間と最後に違いが出ている

このスライドではエンジニアに対して「Copilotの利用について何が良かったか?」を訊いた結果を示している。興味深いのは当初は「生産性が上がる」とエンジニア自身も考えていたが、時間が経過してみると「コードを書く作業がシンプルになった」ということがトップに来ている点だろう。その部分に貢献していると思われるAutocompleteが評価されていることにも注目したい。

またコードに対するコメントを書くという作業も、従来はコードを書いてからそれを説明するためにコメントを書くという順番だったものが、まったく異なる作業になったこと、まだCopilot自体は完璧ではないし、それはペアを組む人間でも同様なのでそれを受け入れようという姿勢になったことなどがCopilotを導入したことによる学びであったと説明。

Copilotを導入したことで得た学び

Copilotを導入したことで得た学び

最後にCopilotを使わないエンジニアの声も紹介。ここでは「まだ余裕がない」「チートしているように感じる」「信用していない」「遅い」といった意見を紹介し、これらの声も徐々になくなっていくだろう、特に遅いという部分に関しては、GitHubが開発を続けることで改善されることを信じていると説明。最後にここまでの評価として7割が受け入れていること、エンジニアが幸せになっていることなどを説明してセッションを終えた。

アーリーアダプターでありつつも客観的にCopilotを評価し、社内のエンジニアリング部門の長としての哲学を示した内容となった。エンジニアの生産性、特にデベロッパーの生産性を数値で測りたがるIT部門の管理職に見てもらいたいセッションと言えるだろう。

著者
松下 康之 - Yasuyuki Matsushita
フリーランスライター&マーケティングスペシャリスト。DEC、マイクロソフト、アドビ、レノボなどでのマーケティング、ビジネス誌の編集委員などを経てICT関連のトピックを追うライターに。オープンソースとセキュリティが最近の興味の中心。

連載バックナンバー

開発ツールイベント
第5回

写真で見るGitHub Universe 2023、狭いスペースを最大限に使った展示ブースなどを紹介

2024/3/13
GitHub Universe 2023のブースやハックできるカンファレンスバッジなどを紹介する。
セキュリティイベント
第4回

GitHub Universe 2023で、GitHubのCSO、Mike Hanley氏にインタビュー

2024/3/5
元CiscoのCISOで現GitHubのCSO、Mike Hanley氏にインタビューを実施した。
開発ツールインタビュー
第3回

GitHub Universe 2023、GitHubのCOO、Kyle Daigle氏にインタビュー

2024/2/27
GitHub COOのKyle Daigle氏にインタビュー。Copliotをスーパーマーケットで買うバターに喩えるその真意は?

Think ITメルマガ会員登録受付中

Think ITでは、技術情報が詰まったメールマガジン「Think IT Weekly」の配信サービスを提供しています。メルマガ会員登録を済ませれば、メルマガだけでなく、さまざまな限定特典を入手できるようになります。

Think ITメルマガ会員のサービス内容を見る

他にもこの記事が読まれています