Почему в программировании столько математики?
Копирование файлика на уровне ОС - элементарная математика (байты перенести из одного места в другое), все числа целые, адресация простейшая.
Программирование контроллера, который будет копировать данные - высшая математика, ибо нужен контроль целостности данных (алгоритмы хеширования или банальных контрольных сумм), алгоритмы коррекции ошибок, шифрование.
Программирование передачи данных по сети - плюс ко всему прочему шифрование, протоколы передачи данных, асинхронная передача.
Программирование в 2д или 3д - геометрия разного порядка. Вычисление стандартных вещей - можно ли пройти из точки А в точку Б и можно ли увидеть из точки А точку Б, а также как это отрисовать с минимальными ресурсами - ужас.
Ну и далее. Простое приложение для какого-нить IOS которое выводит "привет вася" - это одно. А Shazam, который анализирует акустическую запись, разбирает ее на части, выполняет сравнение с учетом искажений - тут вам нужна не только хорошая математика, но и еще неплохо в этих сигналах разбираться, понимать как они хранятся в компе (как преобразуется аналог в цифру, с какими потерями, и что с ними делать) и так далее.
В общем алгоритмы, алгоритмы, алгоритмы.
Как говорил Ломоносов, математику следует учить только за то, что она приводит ум в порядок.
Компьютер это не более чем продвинутый калькулятор. Все данные в памяти хранятся в виде чисел, а выполнение программы процессором в итоге сводится к  последовательности арифметических операций над этими числами.
Таким образом задача программиста заключается в том чтобы научить компьютер конвертировать нечисловые данные, полученные от пользователя, в числа. Затем получившийся массив чисел как-то обработать и результат преобразовать обратно в форму понятную пользователю. Сейчас часть этой работы, как правило, скрыты от программиста, компилятор языка берет эти функции на себя, что позволило существенно снизить порог входа в программирование
Существует даже специальный раздел математики - математическое моделирование. ММ определяет законы способы и методы перевоза нечисловой информации в числа