ブール代数は、制御構造とリファクタリングを理解するための基本です。たとえば、deMorgan の法則を知らなかった (または使用できなかった) プログラマーによって引き起こされた多くのバグを見てきました。別の例として、何人のプログラマーがすぐにそれを認識しますか?
if (condition-1) {
if (condition-2) {
action-1
} else {
action-2
} else {
action-2
}
のように書き換えることができます
if (condition-1 and condition-2) {
action-1
} else {
action-2
}
離散数学と組み合わせ論は、さまざまなアルゴリズムとデータ構造のパフォーマンスを理解するのに非常に役立ちます。
Baltimark が述べたように、数学的帰納法はループと再帰についての推論に非常に役立ちます。
集合論は、リレーショナル データベースと SQL の基礎です。
類推として、大工は屋根や階段などを構築する際にさまざまな経験則のテクニックを日常的に使用していることを指摘しておきます. ただし、幾何学の知識があれば、「既定の」経験則がない問題を解決できます。それは、基本的な語彙の視覚認識と音声学による読み方の学習のようなものです。90% 以上の場合、大きな違いはありません。しかし、なじみのない状況に遭遇した場合、自分で解決策を見つけるためのツールがあると非常に便利です。
最後に、数学に必要な厳密さ/精度は、特定のテクニックに関係なく、プログラミングの準備として非常に役立ちます。繰り返しになりますが、私がこれまでのキャリアで見たプログラミング (または仕様) のバグの多くは、根本的な原因がずさんな考えに基づいています。