Как программирование помогает в преподавании математики

Подход к преподаванию математики, описанный в первой статье, основывается на представлении математики как способа описания окружающего мира на конкретных физических примерах. Целью же данной статьи является реклама нового подхода, который мы внедряем в нашей академии математики для школьников.

Конечно же, сейчас много школ математики и программирования для детей. И, не смотря на то что эти области очень сильно связаны, большинство программистов никогда не использует математику в своей работе. А вот математики (или физики) — наоборот.

Программирование для математиков

Работа большинства математиков так или иначе связана с программированием: математическое моделирование, оптимизация, численные эксперименты, …. Да практически любая формула сегодня должна быть запрограммирована и проверена на компьютере!

Как программирование помогает в преподавании математики

Ученый вывел на бумаге новую формулу; можно пытаться ее доказывать, но обычно гораздо быстрее ее запрограммировать и посмотреть, дает ли она нужный результат. И только потом приступать к изучению или доказательству формулы. Такой подход позволяет максимально быстро проверять гипотезы. Я, к примеру, при работе над своей диссертацией по математике большую часть времени потратил программируя на matlab-е и python-е. Собственно, я пришел в программирование через математику. И я такой не один.

Как программирование помогает в преподавании математики

Математика для программистов

Есть небольшое количество случаев когда математика нужна в программировании:

— как экзамен для поступления в институт;

— прохождение собеседований;

— data science направление;

— узкие направления, требующие разработки алгоритмов, оптимизации или что-то подобное.

В остальных случаях максимум что нужно, так это уметь умножать одно число на другое для расчета занимаемого объема хранилища данных. Удивительно, но не редкость, когда программист не помнит даже формулу дискриминанта. Поэтому если вы боитесь, что у вас или вашего ребенка не получится стать программистом из-за гуманитарного склада ума, то не бойтесь.

Если вы боитесь, что у вас или вашего ребенка не получится стать программистом из-за гуманитарного склада ума, то не бойтесь.

И все же важно отметить, что сильный математический бэкграунд расценивается как конкурентное преимущество на рынке и будет только усиливать ваше резюме.

Мы обговорили, что математикам программирование нужно часто, а программистам математика — не часто. Но при чем здесь преподавание математики?

Понимание математики через программирование

Помогая школьникам понять математику, мы практически подтвердили очевидную вещь: чем разностороннее взгляд на тему, тем выше уровень ее понимания. И программирование постепенно становится для нас незаменимым инструментом в объяснении материала.

Во-первых, программирование -- это переход от концепции нахождения переменных, к концепции создания обобщенных программ вычисляющих данные переменные. Например, программируя функцию решения квадратных уравнений, школьнику потребуется:

  • структурировать свои знания, разбить крупную задачу на маленькие подзадачи;
  • предусмотреть различные входные данные и какие результаты можно получить на выходе;
  • правильно запрограммировать;
  • проверить написанную программу для разных случаев.

В то время как решая на листке ученик автоматом применяет формулу и в случае ошибки просто пропускает или же смотрит в ответы. Так уж это работает: у нас негласно принята концепция "нарешивания" примеров. В то время как программирование ставит конкретную задачу с понятным результатом. Здесь нельзя сказать: "я ошибся при вычислении дискриминанта, но формула правильная". На экзамене тоже так сказать не получится. И это, немного, но дисциплинирует.

Во-вторых, правильно написанная программа дает больше эндорфинов чем правильно решенный пример, что стимулирует к изучению предмета. Конечно, ссылок на исследования не будет, мы ограничимся субъективными ощущениями: собственными и наших учеников. И даже если это не так, то это не меняет общую картину.

В-третьих, это позволяет ученикам чувствовать, что они приобретают практические востребованные навыки. Это крайне важно, так как сейчас об преимуществах работы в IT сейчас сообщают младенцам сразу после рождения. Таким образом мы сразу отсекаем вопрос "а где же это пригодится в жизни"?

Подытожим

Мы отметили всего три преимущества внедрения заданий на программирование для школьников, когда как на эту тему можно написать не одну диссертацию по педагогике. Однако мы выделили данные пункты как наиболее заметные и важные для нас как для преподавателей математики. Если же сформулировать одной фразой, то я бы сказал:

Использование заданий на программирование, при изучении математики, позволяет ученикам структурировать свои знания, по-другому взглянуть на примеры из учебника и поднять мотивацию к изучению предмета.

11