21 квітня 2023 року відбулася тематична зустріч-практикум «Школи майбутнього ІТ-шника» на тему «Чому математика так важлива для майбутнього ІТ-шника», яку організував факультет ІТ НУБіП України.
На вебінарі виступила Голуб Белла Львівна – кандидат технічних наук, доцент, завідувач кафедри комп’ютерних наук. Вона розповіла про освітню програму 122 «Комп’ютерні науки».
Було розглянуто наступні питання:
«Чи потрібно програмісту знати математику?»
«Яку саме математику потрібно знати програмісту?»
«Які області математики потрібно знати для різного роду програмістських задач?»
«Навіщо в ІТ сфері знати математику?»
Знання предметів вищої математики, навіть, якщо не використовувати їх на практиці, дасть вам переваги при розв’язуванні навіть простіших проблем. Часто буває команда різних спеціалістів, частина з яких розв’язують складні математичні завдання, а інші – чисто програмістські, інфраструктурні. В таких випадках знання вищої математики дозволяє легше розумітись із іншими в команді, говорити на спільній мові, спільними категоріями.
Основна задача програміста – це пояснити комп’ютеру, що робити на одній із мов програмування. Тому тут можливі варіанти:
- Якщо ви плануєте займатися графікою, то, більше за все, вам знадобляться знання з диференціальних рівнянь та аналітичної геометрії.
- Якщо моделюванням природних процесів (наприклад, в галузі енергетики), то потрібні: математичний аналіз, диференціальні рівняння, математична фізика і обчислювальна математика.
- Якщо фінансовою сферою, то необхідно розбиратися в теорії ймовірності та математичній статистиці, а також в математичній логіці, алгебрі, теорії чисел і обчислювальній математиці.
- Для створення ігор стануть в нагоді всі розділи математики (особливо лінійна алгебра), оскільки доведеться працювати з графікою, моделювати фізичні процеси, ну і, звичайно ж, створювати штучний інтелект. У нагоді будуть комбінаторика і комбінаторні алгоритми, в основному при оптимізації різних алгоритмів, що працюють з перестановками, поєднаннями, розміщеннями, розбиттям на підмножини, обходи графів, а також при оцінці складності того чи іншого алгоритму.
- При написанні баз даних або побудові пошукових систем не обійтися без знань дискретної математики. Вона ж стане в нагоді в логістиці та побудові маршрутів.
- Data mining в свою чергу вимагає володіння математичною статистикою, як і біржовий сектор, де більшість гравців — боти, при написанні яких також потрібні знання з математичної статистики, як і при будь-якому прогнозуванні.
- Для розробників веб-додатків достатньо знань з елементарної математики просто тому, що якихось особливих математичних навичок в цій сфері розробки ПЗ не потрібно.
- Програмістам, що працюють на більш складному рівні, знадобляться більш фундаментальні знання — наприклад, в індустрії розробки комп'ютерних ігор (Game Development) дуже корисні знання алгоритмів, лінійної алгебри та аналітичної геометрії. У будь-якому випадку, перш ніж почати будувати свою професійну кар'єру в програмуванні, вкрай важливо закласти ті самі базові знання, які в обов'язковому порядку подаються в сильних технічних вузах.
- Для різного рівня програмування корисні свої розділи математики. Для низькорівневого програмування, для 3D моделювання, для задачі-орієнтованого програмування - будуть корисні свої розділи. Кому геометрія, кому дискретна математика. Наприклад, без знань лінійної алгебри та статистики неможливо програмувати в області шифрування.
Загалом, вебінар був цікавим та змістовним. Учасниками було отримано багато нових знань та освоєно чимало актуальних навичок.
Роман Свінтозельський, Андрій Вакулко, студенти 33-ІП групи