В прошлой статье я описал своё субъективное видение на теорию обучения взрослых людей. Сегодня хочу поделиться некоторыми практическими приёмами, которые использую при обучении программированию.
Приём “Добро пожаловать…“
В самом начале общения со студентами провожу с ними знакомство: а-ля “добро пожаловать в клуб анонимных… программистов”. Прошу их рассказать (ответить на вопросы):
-
кем работают/учатся?
-
чем занимаются, каких хоббей имеют?
-
для чего пошли учиться?
-
какие есть знания по программированию?
Начинаю с себя, потом прошу всех подобным образом представиться. Нужно это для того, чтобы мне понимать что из себя представляют студенты, с которыми я буду работать (т.е. учить их).
Приём “Ошибки“
При знакомстве я также предупреждаю студентов, что при рассказе и в коде часто делаю ошибки специально или нет. Нужно это для удержания внимания, дабы не расслаблялись и не верили на слово, а перепроверяли меня. Позволяет немного повысить самостоятельность студентов.
Приём “Вовлечение в повествование“
Не рассказывать как будто читаешь лекцию, а вовлекать студентов в повествование:
-
просить их предположить как будем действовать дальше
-
просить найти ошибку в коде (а её может и не быть при этом)
-
просить дать оценку тому, что получилось
Приём “Багаж знаний”
Стараюсь студентам объяснять на основе их знаний, их работы или увлечений. Очень помогает им быстрее понять тему.
Приём “Нет математике!“
Практически не использую задания или примеры связанные с математикой. Даю более приближенные к реальности задания. Надеюсь в комментариях меня “линчуют” за этот приём.
Приём “Множественное программирование”
После некоторого времени обучения можно пробовать применять парное программирование. Я расшариваю свой экран, а кто-то из студентов говорит что нужно писать. Часто парная работа переходит в командную работу. При этом я только в роли исполнителя. Точнее стараюсь быть только в роли исполнителя. Т.к. очень сложно удержаться и не сказать как мне бы хотелось написать код. Но нужно терпеть.
Приём “Командная работа“
Работа в команде над заданием.
При первом применении этого приёма прошу группу самостоятельно разбиться на группы по 3 — 5 человек и самостоятельно распределить роли, обязательно выделение козла… т.е. тимлида. Устанавливаю сроки. Могу присутствовать при их обсуждениях, но не вмешиваюсь. По истечении срока сначала спрашиваю с тимлидов, потом провожу рефлексию либо с каждой командой по отдельности, либо со всеми сразу.
При повторениях командной разработки — я уже сам распределяю на команды, назначаю роли.
В этом приёме важно увидеть студентам с чем они могут столкнуться при реальной командной разработке. Посмотреть на свои способности: хард и софт, и на способности других. Проанализировать что делали и как можно было бы исправить или оставить как есть.
Приём “Долгий проект”
Стараюсь показывать не на разных обособленных проектах, а на одном большом. Например, изучаем мы БД — я создаю БД, к которой потом будем подключаться из программы на C#. Потом напишем для неё графического клиента и т.п. Сей приём позволяет студентам понять как всё может быть взаимосвязано.
А какие вы используете приёмы? Или может какие вам нравятся/не нравятся приёмы преподавания?
Дополнение на основе комментария @vsemvampeacedeath
Приём «Собеседования»
Прошу студентов ходить по собеседованиям (хотя сейчас добраться до технического собеседования бывает ой как сложно…). Нужно это для того, чтобы студенты понимали какие навыки требуются для трудоустройства, что спрашивают на собеседованиях. Если я что-то забуду им рассказать — то они мне напомнят после собеседований об этом.
ссылка на оригинал статьи https://habr.com/ru/articles/856800/
Добавить комментарий