その他
Show HN: Devthropology – GitHubリポジトリのためのより良いインサイト
Show HN: Devthropology – Better Insights for GitHub Repos (devthropology.com)
要約
Devthropologyは、GitHubのプルリクエストデータを基盤とした情熱プロジェクトです。開発者の人類学(developer anthropology)をもじった名称で、コードベースの貢献者、レビュー、コードの健全性、コラボレーションパターンに関する詳細なインサイトを提供します。特に、コードがどのようにリポジトリ内を移動するか、AIが開発速度に与える影響、ファイル履歴の追跡などに焦点を当てています。
全文翻訳
Devthropologyは、GitHubのプルリクエストデータを基盤として構築された情熱プロジェクトです。その名称は、開発者の人類学(developer anthropology)という言葉遊びです。プルリクエストデータは様々な方法で分析できます。この機能は、自分が取り組んでいるコードベースについて異なるインサイトを得たいという好奇心から構築されました。データの一部は一般的ですが、他の一部は他では見られないものです。
これを、パフォーマンスが速く、より詳細で、作業がコードベースをどのように移動するかという点に焦点を当てた、改良版GitHubインサイトページと考えてください。主なエンティティは貢献者であり、PRの作成と、他の人へのレビュー/フィードバックという2つの側面があります。そこから、リポジトリ全体の統計情報、ユーザー間のインタラクション、貢献のトレンド、ファイルの健全性、コラボレーションパターンを見ることができます。一部のインサイトは、AI時代における開発速度とコードの健全性を理解するのに役立ちます。
各ページの詳細は以下の通りです。
ホームページ:リポジトリの概要を示します。年齢、ファイルタイプ、アクティブな貢献者、新規および離脱したユーザーを表示します。マージ時の作成者の年齢を追跡しているため、時間の経過とともに変更をリリースした人々の在籍期間を確認できます。
ファイルエクスプローラー:私のお気に入りの部分の一つです。ファイルのリネームや移動を追跡するファイルのグラフを構築し、完全な履歴を作成します。ロールアップすると、各ファイルとフォルダに、アクティブ、開発中、停滞中、おそらく離脱したユーザーによって触れられた、といった見通しが割り当てられます。貢献者のタイムライン、最近の変更、一部のファイルについては、そのリネーム/移動履歴や、しばしば一緒に変更される関連ファイル(コーディングエージェントに役立つ)を簡単に確認できます。
トレンド:最も情報量の多いページで、貢献の速度を示し、AIがより多くのコードをリリースするのに役立っているかどうかを理解しようとします。チャートは比較のために年ごとに区切られ、PRサイズ、出力、レビューラウンド、承認レイテンシを異なるパーセンタイルで追跡します。PRはさらにバケット化されたサイズに区切られ、詳細な分析を容易にします。小さなPRの方がまだ早くリリースされる可能性が高い一方で、非常に大きなPR(AIの産物?)は遅くなっていることを示しています。
リレーションシップ:PRアクティビティによって重み付けされた貢献者間のインタラクションのグラフで、シンプルなアルゴリズムを使用しています。コミュニティは、一方向対双方向を示すリンクとともにグループ化されています。ノイズを除外するために、時間を調整したり、スコアを上げたりすることができます。貢献者をクリックすると、インタラクションのスコアと、それらが主にフィードバックを与えているか受けているかが表示されます。
コントリビューター:すべての貢献者を検索し、いくつかの生涯メトリクスを表示します。クリックすると、いくつかの概要情報とともにプロファイルが表示されます。いくつかの作成者/レビューア固有の統計情報が4つの期間にわたってランクとともに表示され、各行はクリック可能です。その下には、ラウンド、コメント、レビュータイミングを含む、最近の作成者/レビューアのPRアクティビティが表示されます。
作成者/レビューアレポート:PRの両方の側面から貢献者のパフォーマンスを示すいくつかのメトリクス。作成者として、およびレビューアとして。セルは色分けされ、ティアにバケット化されており、リポジトリ内で誰がどこに位置するかを簡単に確認できます。ユーザー、チーム、または時間でフィルタリングできます。
いくつかの重要な用語と制限事項:
コントリビューターとは、マージされたPRで作成またはコメントしたアカウントです。これにはボットも含まれる場合があります。
レビューラウンド / 「ラウンド」は、非作成者がコメントを残し、作成者がさらにコミットをプッシュしたときに発生します。これは、やり取りをシミュレートしようとします。
「効果的な」承認とは、マージに実際に影響する承認、つまり、最後のレビューラウンドの後の最初の承認です。例:AがPRを開き、Bが承認し、Cが変更を要求し、Aがさらにコミットをプッシュし、Cが承認した場合、Cの承認が効果的な承認です(Bの承認は期限切れです)。
トレンド/レポートはチームでフィルタリングできますが、残念ながらプライベートAPIキーがないと、チームを同期できません。いくつかのリポジトリでは、いくつかの小さなチームを作成しました。
ぜひご覧ください。多くのボタン、ドロップダウン、クリック可能なリンクがあります。デモリポジトリは、オープンな環境で開発しているプライベート企業であり、プライベートリポジトリに似たパターン(貢献者セットが小さく、貢献者あたりのアクティビティが多い)を持っているため選択されました。
以下のコメントまたはhey@devthropology.comまで、フィードバックをお待ちしております。