概要
- PRのマージ を断る理由と背景の説明
- LLM(大規模言語モデル)活用 による開発スタイルの変化
- 貢献方法の転換 と価値あるサポートの提案
- 具体的な協力方法 の提示
- フォーク推奨 による開発効率化の促進
コントリビューションの見直しとPRをマージしない理由
- あなたの貢献 に感謝しつつ、現状のコラボレーション方法を再考したい意向
- 見知らぬコントリビューター のコードには悪意ある変更が混入しているリスクが常につきまとう
- コードの書き方やスタイル に対する個人的なこだわりや主観的な側面の違い
- レビューやCI、マージコンフリクト など、調整作業の手間とタイムゾーンの違いによる非効率
- PRのやりとり が開発スピードを遅延させる要因
- LLMの進化 により、コード実装自体の価値が相対的に低下
- LLM生成コード は悪意のリスクが低く、スタイルも自動化しやすいため、自己完結型開発が容易
- 他者との調整不要 で、自分のペースで開発可能
ソフトウェア開発の本質的な変化
- ソースコード は「ソース」ではなく「中間成果物」としての性格が強まる
- 自動生成が容易 になり、設計やレビューに価値がシフト
- LLMの活用 で設計・レビュー・理解が主なボトルネックに
- 他人のPR は設計や理解、レビュー面であまり助けにならない
- 今後は自分でLLMを活用し実装 する方が効率的
価値ある貢献方法の提案
- フィードバック提供
- 実装者は利用やリサーチの時間が限られるため、ユーザー視点の改善点や良い点の共有が有益
- アイデアの議論
- 多様な経験や視点を持つ人との議論が設計や方向性決定に役立つ
- バグ報告・調査
- 再現手順や発生箇所の特定、解決案の議論まで含めた良質なバグ報告は極めて価値が高い
- 変更のプロトタイプ提示
- 参考実装や生成プロンプトの共有は、実際にマージしなくても設計の参考資料として有用
- コードレビューと指摘
- レビュー負荷の軽減や見落とし防止に貢献
- フォークして独自開発
- 自分のニーズに合わせて自由に改変し、アップストリームと独立したペースで開発可能
- 設計の多様性や新たな学びにつながる可能性
今後の協力のあり方
- コードの直接的なPR提出 は控え、上記のような多様な形でサポートを検討
- フォーク・独自実装 も歓迎し、相互に学び合う開発コミュニティ形成を志向
これ、まあ…大丈夫そう?プロジェクトでバグに遭遇したら、自分で直しちゃうことが多いから、直さなきゃいけないし。バグをPRと一緒に書いてメンテナーに送るのは、普通の礼儀だと思うんだよね。もしマージされれば、アップデートの時にフォークしたりパッチ当てたりしなくて済むし、ウィンウィンだと思う。でも、メンテナーがPRを受け取りたくないなら、それも全然いいよね。自分でやった方が楽な時もあるし。