ナチュラルプランニング がソフトウェアの設計にも当てはまると感じたのでメモ。

開発中「わからないが、とりあえず手を動かしてみる」というのがあるが、年々これはあまりよくない仕事の進め方だという考えになってきた。

理解に時間をかけるということ

そもそも作る目的がわからないのは論外だし、具体的に作るもののいイメージがわからないときも誰かに聞いて明確化したほうがいい。未経験のコードベースを触るときは、経験者に聞く

ペアプロ始める前に成果物がイメージできない場合は一旦相手に待ったをかけてイメージ共有する、あるいはイメージできないと言うのが大事。

  • すぐテストコード書き始めるんじゃなく、一旦ブレストしてみるとか
    • 処理の流れ、どのAPI・サービスを使うかなどを一旦整理する
    • 一緒に仕事したことある凄腕エンジニアも、複雑な処理を書くときは考慮事項をコメントでリスト化していた
    • ケント・ベックもやることをリスト化してTDDしていたTDDの進め方
  • デザインドキュメントを書くのもいい