プロジェクトへの関わり方について - sunfish-shogi/shogihome GitHub Wiki
はじめに
ShogiHome やその関連プロジェクトで Issue や Pull Request を作成したりコメントする場合は、このページの内容を事前に理解してください。 もちろん、 Fork した自身のリポジトリでの活動はその限りではありません。
このプロジェクトについて
ShogiHome は個人開発のプロジェクトです。広告収入や寄付金の受け取り、ユーザー情報収集は一切ありません。 その一方で、極めて多くの時間と労力を割いて開発をしています。
このプロジェクトが成り立っているのは、メンテナー自身が作りたいものを追及しているからです。 営利目的の製品やサービス、あるいは金銭的援助があるプロジェクトと同じ性質だとは考えないでください。
ShogiHome ではソースコードが公開されており、非常に制限の少ないライセンスのもとで利用できます。 機能を追加したければ自由に独自のバージョンを開発することができ、営利目的でも利用できます。
自身でプロジェクトを運営せず本家のプロジェクトに働きかけて物事を進める際、メンテナーの労力を利用しているのだということを忘れないでください。
歓迎するもの
客観的に整理された不具合報告
ShogiHome には多くの機能があるためリリースのたびに網羅的な動作確認をすることは困難です。 そのため、ユーザーからの不具合報告が重要な役割を果たします。
ただし、不具合報告が実際に役立つには適切な情報が必要です。 環境・設定・操作手順・エラー文言・スクリーンショットなどの客観的で可能な限り再現性のある内容が求められます。
なお、不具合とは開発者が見落としていると考えられる異常な動作のことを指します。 環境の問題やエンジンの問題、個人的な不満や意見は書かないでください。
関連技術のエキスパートによる助言や提言、修正など
将棋 AI 開発者、あるいは関連技術(プログラミング言語、フレームワーク、設計手法など)のエキスパートからの助力はとても貴重です。
例えば、開発者が簡単に解決できず協力を求めている Issue には help wanted ラベル が付いています。
継続的な翻訳活動
開発者は英語への翻訳を行っていますが品質が十分ではありません。各種文言に対する改善案の提示を歓迎します。
また、英語以外の言語への翻訳も受け入れますが、継続的な協力を得られないと翻訳されない文言が徐々に増えてしまいます。 言語の追加は UI のメンテナンス負荷につながるため、ある程度の継続的な協力をしていただける方の参加を望みます。
コントリビューションに必要な質問
ShogiHome への直接的な貢献、あるいは周辺のエコシステムへの貢献を目的とした質問を受け付けます。
ただし、「興味本位でちょっと触ってみたい」「勉強のためにやってみたい」などの目的はこれに該当しません。
控えて欲しいもの
機能要望
個人的に欲しい機能やサポートを要求することは歓迎しません。 せっかく作ったものなので活用されたら嬉しいとは思いますが、要求されたものを作ることは望んでいません。
将棋界や将棋 AI における貢献者など、開発者にとって例外的に扱うべき人物によるものであれば、その限りではありません。 ただ、そのような方とは GitHub 以外でつながりがあるので、基本的に GitHub で機能要望や何らかのサポートの依頼を受けることは想定していません。
運用や機能開発に対して意見したり不満を述べる行為
報酬をもらっているわけではないので、運用方針や機能開発についての意見は受け付けていません。 知見の提供は歓迎しますが、「XXX すべき」「YYY が良くない」などといった考えの押し付けや批判は歓迎しません。
Issue や Pull Request において自身のアイデアや実装が採用されることを前提にしないでください。 先述した通り、このソフトウェアは自由に使えるので、本家のリポジトリで活動する必然性はありません。 あくまでも「役に立つなら利用してくれ」という立場に徹してください。
勉強や実績づくりを主目的とした活動
レビューを受けて勉強することを目的に Pull Request を作成したり、OSS へコントリビュートしたという実績を手っ取り早く作るために質の悪い Pull Request を作ることはやめてください。