9月10日、GitButlerが「なぜGitHubが勝ったのか」と題したブログ記事を公開した。この記事では、GitHubが他のプラットフォームと比較してどのように成功を収めたのか、そしてその背後にある要因について詳しく紹介されており、海外で多くの人々に読まれている。以下に、その内容を紹介する。
GitHubが成功した理由
GitHubの成功は、単に技術的な優位性だけでなく、いくつかの重要な要因が相互に作用した結果である。その要因は、主に以下の2点に集約される。
タイミングの良さ
GitHubが登場したのは、分散型バージョン管理システム(DVCS)が徐々に普及し始めた頃であった。2005年にGitが誕生し、これまでの集中型バージョン管理システム(SVNやCVS)が持つ問題点を解決するツールとして注目され始めた時期だった。特にオープンソースプロジェクトの拡大に伴い、集中型のシステムでは対応が難しくなっていたため、Gitのような分散型システムが求められていた。このタイミングでGitHubは登場し、商業的なホスティングサービスがほとんど存在しない中で、開発者のニーズに応えるプラットフォームを提供することに成功した。図1: 2005年当時の開発環境
優れたセンス
GitHubの共同創設者たちは、他の競合プラットフォームと異なり、開発者体験に焦点を当てた製品を構築した。たとえば、SourceForgeやGoogle Codeは、広告収入や企業向けのソリューションを重視していたのに対し、GitHubは開発者のために設計されたプラットフォームだった。共同創設者全員がプロダクト志向のオープンソース開発者であり、彼ら自身が使いたいと感じるツールを作り上げた。その結果、開発者にとって使いやすく、直感的なユーザーインターフェースや機能が提供され、競合を凌駕する存在となった。
GitHub以前のオープンソース開発の困難さ
GitHubが登場する前、オープンソースプロジェクトへの貢献は非常に煩雑で非効率的だった。開発者は、以下のような手順を踏む必要があった。
- 最新バージョンをチェックアウト
- 変更を加える
- GNU diffを使ってパッチファイルを生成
- そのパッチをメールリストやチケットシステムにアップロード
- メンテナーがパッチをダウンロードし、プロジェクトに適用して動作確認を行う
このプロセスは非常に手間がかかり、多くの開発者にとって負担となっていた。GitHubの「フォーク」や「プルリクエスト」といった機能が登場することで、このプロセスが劇的に簡略化され、誰もが簡単にオープンソースプロジェクトに貢献できる環境が整った。
Gitの誕生とBitKeeperとの関係
Gitの誕生は、商用バージョン管理システムであるBitKeeperの存在が大きなきっかけとなった。Linus Torvaldsは当時、Linuxカーネルの開発にBitKeeperを使用していたが、ライセンスの問題で使用ができなくなり、新たなツールとしてGitを開発した。GitはBitKeeperの特徴を取り入れながらも、よりシンプルで高速な操作が可能なツールとして成長した。特に、ブランチやマージの処理が非常に簡単であり、これがGitHubの普及に大きく貢献した。
図2: 2009年出版の「Pro Git」初版のアンボクシング
プルリクエストの誕生
GitHubの「プルリクエスト」という機能は、Gitの「git request-pull」コマンドに由来する。このコマンドは、他の開発者に自分のリポジトリから変更を取り込むよう依頼するためのメールを作成するためのものであった。GitHubはこのプロセスをウェブインターフェース上で簡単に行えるようにし、開発者同士のコラボレーションをより効率的にした。
RubyコミュニティとGitHubの成功
GitHubが短期間で成功を収めた背景には、Rubyコミュニティの存在がある。GitHubの共同創設者たちは、Rubyコミュニティに深く関わっており、このコミュニティがGitHubをいち早く採用したことで、他の開発者にも急速に広まった。Ruby on Railsが当時非常に注目されていたこともあり、Rails開発者たちはこぞってGitHubを使用し、これがGitHubの成長を加速させた。
図3: GitHub共同創設者とRubyコミュニティの交流
競合プラットフォームの敗退
GitHubが成功する一方で、Google CodeやBitBucketといった競合プラットフォームは次第にその存在感を失っていった。特にGoogle Codeは、2011年にGitサポートを導入したが、すでにGitHubが市場を席巻していたため、ユーザーの獲得に苦戦した。最終的にGoogle Codeは2015年にサービスを終了し、ユーザーにGitHubへの移行を推奨するという結果となった。
GitHubとVC投資
GitHubの成長は、初期段階では外部からの資金調達に依存せず、共同創設者たち自身のリソースで運営されていた。2008年には、まだ4人の開発者がカフェで作業を行いながら、外部資金を使わずにサービスを運営していた。しかし、2012年にはAndreessen Horowitzからの100億ドルのAラウンド投資を受け入れ、さらなる成長のための資金を確保した。この決断は簡単ではなく、共同創設者たちはその是非について激しく議論したが、最終的に大規模な成長を遂げるための選択肢として受け入れることとなった。
なぜGitHubが勝ったのか
最終的に、GitHubが勝利した理由は「タイミングの良さ」と「優れたセンス」にある。分散型バージョン管理の需要が高まる中で、GitHubは開発者体験を最優先にしたプラットフォームを提供し、競合他社とは異なるアプローチで開発者コミュニティを取り込むことに成功した。
詳細は[Why GitHub Actually Won]を参照していただきたい。