ВЫБЕРИ репетитора! Промокод на скидку 25283
ЗАМУЧИЛИ БОЛИ В СПИНЕ?

Интервью с Евгением Масловым

О луче света, секундной стрелке и… программировании…

Здравствуйте! Сегодня интереснейшее и полезное интервью. Наш собеседник Маслов Евгений Анатольевич, преподаватель математики и информатики. Он занимается подготовкой ребят к экзаменам в Челябинске, добро пожаловать в учебный центр. Известен, как популяризатор высоких технологий и программирования, цифровой картографии, дистанционного зондирования земли и космонавтики. Итак, приступим.

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

Хорошо, к примеру, такая задача: Какое расстояние пройдет луч света за один такт работы процессора, если его тактовая частота 3 ГГц?

Но это задача из какого предмета: информатики, математики, физики или астрономии? Хотелось бы узнать ответ? Интересно!

Задача междисциплинарная и, действительно, в ней есть, в том числе, математика и физика. Мы эту задачу решим с вами в конце и найдем ответ.

Вы постоянно говорите, что программирование – это ожившая математика. Можете дать пояснение?!

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

То есть без математики в программировании никуда?! Нужны формулы, формулы, формулы?!

Так и есть! Если вы загляните в историю развития языков программирования, то первый язык программирования высокого уровня, получивший практическое применение это Фортран (Fortran). Название Fortran является сокращением от FORmula TRANslator (переводчик формул).

А формул бояться не нужно. Программирование физических процессов помогает снять психологические барьеры и страх перед формулами. Можно запрограммировать игру в бильярд, в которой требуется показать поведение шаров при столкновении, а для этого нужно найти в учебнике физики закон сохранения импульса и учесть его. Чем качественнее реализована «физика» в программе, тем реалистичнее выглядит виртуальное моделируемое пространство.

То есть вы с учениками занимаетесь не только программированием, но и математикой и даже физикой?!

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

Неужели?! Действительно, хватает школьных знаний?!

Да, реализовать, к примеру, 2D-платформер школьники уже могут.

Из Википедии:

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

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

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

И у ученика появляется вопрос к самому себе: «А что я ещё смогу сделать?! Какая следующая задача будет интересной?!”. Включается самостоятельная поисковая активность, сначала робкая, а потом все больше и больше набирающая силу. Возникает ситуация: сначала отношение к школьным знаниям, как к досадному недоразумению в своей жизни, а оказывается это волшебная палочка и магия, оживляющая собственноручно созданную виртуальность!

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

Двумерный массив в контексте таких игр, как 2D-платформеры, представляет собой плоское игровое поле. Игрок может видеть объекты игры: как план – вид сверху или как вид сбоку.

Мы слышали, что вы очень строгий учитель и не любите небрежности в программировании. Это так?!

Это так и даже больше! Красиво написанная программа вызывает восторг и удивление, как красивое стихотворение или мелодия. Слышал одно из определений красоты: «Красота – это сумма взаимодействующих элементов, к которой ничего не надо добавлять, убавлять, менять». Как говориться: из песни слов не выкинешь! Так и изящно написанная программа вызывает восхищение, как своим программным кодом, так и результатом своей работы.

А еще я открою вам тайну, которую открываю своим ученикам, когда мы занимаемся созданием полного аналога чужой компьютерной игры: как проникнуть в инженерные мысли ее создателей.

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

И сидит будущий программист занимается режиссурой игры и усмиряет своих капризных персонажей, а перед глазами отлаживаемая программа, которая очень быстро набирает сотни и сотни строк!

В таком формате работы уже свою программу не бросишь и не скажешь: «Так сойдет!», а будешь с упорством и терпением делать прогон за прогоном, дубль за дублем, благо виртуальные герои не устают!

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

«X-Net. Школа эффективного программирования Евгения Маслова». Почему на эмблеме крокодил, кусающий солнце?!

Потому что моим ученикам задачи любой сложности по зубам (смеется)!

Расскажите о своих космических планах и «Воздушно-инженерной школе»?

Это инновационный научно-образовательный проект, который в России развивается уже шесть лет. Проект реализуется в форме ежегодного соревнования школьных и студенческих команд по разработке и запуску школьных «спутников».

Эти маленькие устройства запускаются ракетой или сбрасываются с вертолёта, и за время плавного спуска с высоты 1–2 км делают снимки, измеряют высоту, давление, температуру и другие параметры (в зависимости от используемых датчиков) и отправляют данные на Землю.

Курирует проект научно – исследовательский институт ядерной физики имени Д.В. Скобельцына МГУ имени М.В. Ломоносова (НИИЯФ МГУ) при поддержке Федерального космического агентства. НИИЯФ МГУ готов к организации учебной площадки «Воздушно-инженерной школы» в нашем регионе, сейчас ведутся переговоры по этому направлению.

В текущем учебном году в проект удачно вошла команда школьников «Челябинский болид», я являюсь ее руководителем. Спутник мы собрали, сейчас учимся его программировать, а собственный ракетоноситель был собран и испытан 23 февраля!

Подробности о проекте на http://roscansat.com и на моей страничке в ВКонтакте.

А задачу о луче света и процессоре мы решим?

Да, конечно! Повторим условие еще раз: «Какое расстояние пройдет луч света за один такт работы процессора, если его тактовая частота 3 ГГц?»

Герц — единица частоты периодических процессов. Герц выражается следующим образом:

1 Гц означает одно исполнение (реализацию) такого процесса за одну секунду, другими словами — одно колебание в секунду, с такой частотой движется секундная стрелка, а 3 ГГц — три миллиарда исполнений такого процесса, или три миллиарда колебаний за одну секунду.

Следовательно, за один такт процессора луч света пройдет:

Всего лишь десять сантиметров! О чем это говорит?

Вспомним, что луч света от Солнца, преодолевая расстояние сквозь космос почти в 149 миллионов километров, доходит до Земли за 8 минут.

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

Скорость электрона равна скорости света. Поэтому за один такт работы процессора труженик-электрон успеет пробежать по проводникам материнской платы всего лишь 10 сантиметров и совершить необходимую вычислительную работу.

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

На сегодня увеличение производительности достигается только за счет многопроцессорности и параллельных вычислений.

Вдумайтесь в этот факт, пока наблюдаете, как вентилятор на процессоре старательно охлаждает его от перегрева.

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

Вот это поворот! Получается задача больше философская! А что вы еще пожелаете будущим изобретателям, которые сегодня только ходят в школу?

Цените время, которое вам сегодня дано. Попусту потраченные секунды сливаются в безвозвратно потерянные возможности. Живите и учитесь с интересом. Будьте въедливыми и дерзкими в своих начинаниях. И тогда вы сможете выйти на устойчивую жизненную орбиту!


НЕ ОТКЛАДЫВАЙ! Заговори на английском!

ДОЛОЙ обидные ошибки на ЕГЭ!!

Подготовка к ЕГЭ, онлайн-обучение с Фоксворд!

Замучили боль и скованность в мышцах спины?

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

12 − два =

*Нажимая на кнопку, я даю согласие на рассылку, обработку персональных данных и принимаю политику конфиденциальности.