絡まった – 鍛冶場の連邦が必要です
概要
- OSSの90%がGitHub依存状態に対する懸念
- 中央集権型システムの脆弱性の指摘
- Tangledは分散型コード協業の新提案
- git + ATプロトコルで協業・コミュニケーションを実現
- コード移動・ソーシャル機能も分散的に提供
GitHub依存の問題と分散型の必要性
- 近年、GitHubの不安定さが増加傾向
- 世界のOSSの約90%が単一プロバイダーに依存するリスク
- 中央集権型システムは長期的に脆弱性が露呈
- 歴史的にemail, git, IRCなど分散型プロトコルが長寿命
- OSSコミュニティにおける多様性と自律性の重要性
コード協業プロトコルの変遷
- 初期:git(コード転送)+email(コミュニケーション)
- GitHub時代:git(コード転送)+GitHubウェブサイト(コミュニケーション)
- ForgeFed:git(コード転送)+ActivityPub(コミュニケーション)
- Tangled:git(コード転送)+ATプロトコル(コミュニケーション)
Tangledの特徴
- 複数のgitサーバー間でイベントを連携("knots"と呼称)
- 任意サーバー上のリポジトリでコラボレーション可能
- サーバーを跨いだフォークやプルリクエストの実現
- 自分のサーバーから別サーバーのリポジトリへプルリクエスト送信
- cgit+メールパッチ送信に近い分散型運用の実現
ATプロトコルによるイベント連携とソーシャル機能
- ATプロトコルでコード関連イベント(イシュー、プルリクエスト等)を認証付きで転送
- イベントタイムライン、フォロー、スターなどのソーシャル機能
- コラボレーター招待やSSH公開鍵の共有にもATプロトコルを利用
- コード自体の転送は従来通りgitを使用
OSSコミュニティへの提案
- OSSはGitHubのようなモノカルチャーから脱却すべき
- しかし、コード協業の楽しさやソーシャル性は維持が重要
- Tangledは分散性と楽しさの両立を目指す新しい選択肢