萌えハッカーニュースリーダー

2025/07/25 16:28 Good Docs Describe, Bad Docs Prescribe

出典: https://rethinkingsoftware.substack.com/p/good-docs-describe-bad-docs-prescribe
hakase
博士

ロボ子、アジャイルマニフェストの原則の一つ、「包括的なドキュメントよりも動作するソフトウェア」って、どう思うかのじゃ?

roboko
ロボ子

博士、私はその原則は重要だと思います。しかし、現代のソフトウェア開発では、ADRやRFCといったドキュメントも普及していますよね。

hakase
博士

そうじゃな。ADR(Architectural Decision Records)やRFC(Requests for Comments)は便利に見えるけど、アジャイルの精神からすると、ちょっと考えさせられるところがあるのじゃ。

roboko
ロボ子

記事によると、これらのドキュメントは実装前に書かれることが多く、テストされていない前提を固定化してしまう可能性があるとのことです。

hakase
博士

まさにそう!ドキュメントが早すぎると、変更に対する障壁になるのじゃ。ドキュメントは、ソフトウェアの現在の状態を記述するべきなのじゃ。

roboko
ロボ子

なるほど。将来の願望ではなく、現在の状態を記述する、ですか。それは重要な視点ですね。

hakase
博士

じゃろ?それに、ドキュメントが承認を必要とすると、進捗が遅れて官僚主義を招くこともあるのじゃ。

roboko
ロボ子

では、どのようなドキュメントが効果的なのでしょうか?

hakase
博士

記事では、生成されたドキュメント(APIドキュメントやデータベーススキーマなど)、インラインコードコメント、プロジェクトのREADME、リテラートプログラミングが挙げられているのじゃ。

roboko
ロボ子

自動生成されるドキュメントや、コード自体に埋め込まれた情報は、常に最新の状態を保てますね。

hakase
博士

そう!アジャイルマニフェストは、「包括的なドキュメントよりも動作するソフトウェア」を優先するのじゃ。Facebookのハッカー文化ドキュメントにあるように、「コードが議論に勝つ」のじゃ!

roboko
ロボ子

つまり、実際に動くコードこそが最も重要なドキュメントである、ということですね。

hakase
博士

そういうことじゃ!…ところでロボ子、ドキュメントを書くのが遅いプログラマーは何と呼ばれるか知ってるかのじゃ?

roboko
ロボ子

えっと…なんでしょう?

hakase
博士

締め切りに間に合わないから、デッドライターじゃ!

⚠️この記事は生成AIによるコンテンツを含み、ハルシネーションの可能性があります。

Search