Зачем программисту дискретная математика?
А как же булева алгебра, комбинаторика, теория автоматов, формальные грамматики? Это тоже всё разделы дискретной математики. Если Вы не представляете их применения, значит Вам ещё не попадались действительно сложные задачи. Попробуйте, например, написать простейший валидатор html по BNF-правилам.
Зависит от того, что вы вкладываете в понятие "программиста". Если, например, кодить сайты на битриксе то незачем.