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

Я поделюсь опытом преподавания в разных уголках мира STEM, расскажу, какие крутые технологии используют студенты и какие крутые проекты они решают.

Лего Робототехника

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

Помогать тренеру и наставнику команды робототехники Lego было **супер круто**! Команда, с которой я работал, участвовала в соревновании FIRST Lego League (ласково известном как FLL). Учащиеся создают своих собственных роботов с нуля, полностью используя детали и детали лего, соревнуются в выполнении миссий в игре с роботами и ищут решение насущной мировой проблемы. Было здорово каждый год видеть команду в действии и творческий подход, который они проявляли в решении проблем. Вот видео, которое неплохо передает сумасшествие и волнение соревновательного дня: https://youtu.be/dNy9wPa_2KQ

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

У FIRST также есть программы, которые расширяются по сравнению с FLL: FIRST Tech Challenge, ориентированный на учащихся средних и старших классов, и FIRST Robotics Competition, предназначенный исключительно для старшеклассников.

PLTW: Инжиниринг

Мне очень повезло получить работу преподавателя инженерного дела в школе, в которой я учился. Project Lead the Way (PLTW) был партнером моей школы и обеспечивает подготовку учителей и разработку учебных программ для инженерных курсов по всей стране. Как и многие компании STEM, которые предлагают учебные программы и школьные ресурсы, они предлагают курсы вплоть до начального уровня в качестве дополнения к урокам естествознания для учащихся, а затем превращаются в различные исследовательские классы для учащихся средних школ. На уровне старшей школы PLTW предлагает несколько разных направлений — инженерное дело, биомедицинские науки и информатика.

Я вел два разных инженерных курса PLTW — первый, «Введение в инженерный дизайн», преподавал основные принципы инженерии и процесс проектирования, а также довольно много занимался 3D-моделированием. Мои студенты использовали программное обеспечение Autodesk Inventor для моделирования множества различных вещей, и это стало большим успехом в классе.

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

Программирование было выполнено с помощью VEX RobotC, языка программирования на основе C. Студенты выполнили проекты, в которых они построили роботов, а затем закодировали программы для этих роботов, которые включали логику и поток управления на основе датчиков робота.

Информатика

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

Code.org был очень крутым, потому что все их предложения практически не требуют от студентов никаких предварительных знаний, поэтому все они могут сразу приступить к изучению основ CS и программирования. Они также предлагают различные курсы от начальной до средней школы.

Вывод

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