ユニットテストが完璧にできるようにするためにはコードの書き方を変える必要が時々ある
私はTypescript, Java等の静的言語は少ししか書いていないのですが、一つ強く感じたのは、DRYなコードの書き方が制限されるという感覚でした RubyだとよくやるようなDRY化の手法が、genericsとかを複雑に操らないとムリだったりしました。そもそもできるのかもしれません
それをDHHは嫌ったのかなと思っています
同じことはTDDについても言えて、ユニットテストが完璧にできるようにするためにはコードの書き方を変える必要が時々あり、それが汚いとDHHは感じたのかなと思っています Typescript については、アプリコードを書く時はそれほどではないが、ライブラリ的なコードは難易度がかなり高くなると言う話も聞きます。コードの再利用性を高めようとすると、静的型付けはキツイことが増えると私は理解しました
なので、技術の冗長さ、難しさに加え、そもそもコーディングスタイルが変に影響されるのが嫌なのかもしれません