Подписчики моего канала в телеграмме часто спрашивают: можно ли идти в программисты, если ты не знаешь математики и обязательно ли ее изучать. Универсального ответа тут нет: в одних областях математикой напрямую не пользуются вообще, а в других она необходима. Приведу краткий перечень областей IT, в которых пригодится математика:
- Математика нужна в анализе алгоритмов. Алгоритмы и структуры данных нужны для эффективного программирования - чтобы оптимизировать вычисления с точки зрения использования памяти, загрузки процессоров и времени выполнения. Одну и ту же программу можно реализовать так, что она будет считать результат 200 тысяч лет, а можно так, что доли секунд - вопрос в выборе (не)эффективного алгоритма.
- Математика (в частности, статистика) нужна в data science - для анализа данных, для обучения моделей машинного обучения и построения нейросетей
- В криптографии (и модном нынче блокчейне)
- В системном программировании
- В программировании чего-то специфического, связанного с математическими вычислениями (например, компьютерной графики или траекторий движения для каких-нибудь роботов)
- В программировании для научных вычислений
Есть компании, куда без хорошего знания математики и алгоритмов, скорее всего, не возьмут - например, Яндекс.
Но далеко не все разработчики сталкиваются с задачами, в которых нужно использовать сложные нетривиальные алгоритмы - обычно они нужны, когда пишешь что-то большое и с серьезными требованиями по скорости выполнения и где каждая лишняя доля секунды - критичная величина. Бывают более простые и высокоуровневые задачи, где котируется простота кода и скорость его написания, а то, что он будет работать чуть медленее - не так критично.
И далеко не все разработчики используют какие-то сложные математические знания в решении своих ежедневных задач. И, по правде сказать, я не сталкивалась с тем, чтобы на собеседованиях спрашивали про матан.
Подписывайтесь на мой канал в телеграме: Программирование для гуманитариев