В прошлой статье я описал своё субъективное видение на теорию обучения взрослых людей. Сегодня хочу поделиться некоторыми практическими приёмами, которые использую при обучении программированию.

Приём “Добро пожаловать…“

В самом начале общения со студентами провожу с ними знакомство: а-ля “добро пожаловать в клуб анонимных… программистов”. Прошу их рассказать (ответить на вопросы):

  • кем работают/учатся?

  • чем занимаются, каких хоббей имеют?

  • для чего пошли учиться?

  • какие есть знания по программированию?

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

Приём “Ошибки“

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

Приём “Вовлечение в повествование“

Не рассказывать как будто читаешь лекцию, а вовлекать студентов в повествование:

  • просить их предположить как будем действовать дальше

  • просить найти ошибку в коде (а её может и не быть при этом)

  • просить дать оценку тому, что получилось

Приём “Багаж знаний”

Стараюсь студентам объяснять на основе их знаний, их работы или увлечений. Очень помогает им быстрее понять тему.

Приём “Нет математике!“

Практически не использую задания или примеры связанные с математикой. Даю более приближенные к реальности задания. Надеюсь в комментариях меня “линчуют” за этот приём.

Приём “Множественное программирование”

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

Приём “Командная работа“

Работа в команде над заданием.

При первом применении этого приёма прошу группу самостоятельно разбиться на группы по 3 - 5 человек и самостоятельно распределить роли, обязательно выделение козла… т.е. тимлида. Устанавливаю сроки. Могу присутствовать при их обсуждениях, но не вмешиваюсь. По истечении срока сначала спрашиваю с тимлидов, потом провожу рефлексию либо с каждой командой по отдельности, либо со всеми сразу.

При повторениях командной разработки - я уже сам распределяю на команды, назначаю роли.

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

Приём “Долгий проект”

Стараюсь показывать не на разных обособленных проектах, а на одном большом. Например, изучаем мы БД - я создаю БД, к которой потом будем подключаться из программы на C#. Потом напишем для неё графического клиента и т.п. Сей приём позволяет студентам понять как всё может быть взаимосвязано.

А какие вы используете приёмы? Или может какие вам нравятся/не нравятся приёмы преподавания?

Дополнение на основе комментария @vsemvampeacedeath

Приём "Собеседования"

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

Комментарии (15)


  1. Shonin
    07.11.2024 12:45

    Хорошая статья. Заберу в работу приёмы. Спасибо!


    1. AnSt Автор
      07.11.2024 12:45

      Рад что понравились приёмы. Может поделитесь своими или напишите какой больше всего понравился?


      1. Shonin
        07.11.2024 12:45

        "Добро пожаловать" уже использую - подтверждаю, работает отлично и почти всегда. Ошибки тоже использую, но редко. Считаю, если частить с этим приёмом, то быстро раскусят умысел и эффективность упадёт, но признаюсь, не тестировал, поэтому предположение осталось на уровне гипотезы. А вот с Вовлечением в повествование появилась идея как протестировать, как раз завтра урок. Посмотрим, как я справлюсь. ))


        1. AnSt Автор
          07.11.2024 12:45

          А что преподаёте?


          1. Shonin
            07.11.2024 12:45

            Основы межличностной коммуникации )


            1. AnSt Автор
              07.11.2024 12:45

              Получилось применить вовлечение в повествование при межличностной коммуникации?


    1. AnSt Автор
      07.11.2024 12:45

      Ох, первый ваш комментарий и под моей статьёй - как бы вас не посчитали "ботом для накрутки" ))))


      1. Shonin
        07.11.2024 12:45

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


        1. ValeryGL
          07.11.2024 12:45

          .. Но минусуют безжалостно :)


          1. AnSt Автор
            07.11.2024 12:45

            Это, к сожалению, ожидаемо.


  1. anonymous
    07.11.2024 12:45

    НЛО прилетело и опубликовало эту надпись здесь


    1. AnSt Автор
      07.11.2024 12:45

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

      P.S. Дополню статью


  1. Emelian
    07.11.2024 12:45

    какие вам нравятся/не нравятся приёмы преподавания?

    Нравится приём «Конкурс». Только это вряд ли доступно для частных курсов. В личной жизни, я участвовал (по собственной инициативе) в конкурсах, еще советского физ.-мат. журнала «Квант», для школьников, по решению трудных задач. Стимул был – увидеть свою фамилию на страницах журнала. Публиковали списки, если задачу решило менее 100 человек на всю страну. Мой рекорд был – 4 человека на весь СССР.

    Другой мой конкурс это участие в заочных подготовительных курсах на мехмат МГУ, когда лучшим участникам давали приглашение на месячные очные подготовительные курсы, при Университете, непосредственно, перед вступительными экзаменами. Что очень сильно мне помогло при поступлении на специальность математика.

    Если бы сейчас организовали всероссийский конкурс для личных пет-проектов по программированию, для всех возрастов, то я бы послал туда свой проект, опубликованный, недавно, здесь, в https://habr.com/ru/articles/848836/ . Мог бы опубликовать и другие программы и полезные скрипты, в рамках этого конкурса. Но, такого конкурса, как раньше в «Кванте», сейчас, похоже, нет.

    Не нравится, естественно, ваш прием «Нет математике!». Она, может быть, и не используется непосредственно в программировании, но важно понимать, что математика хорошо развивает абстрактное и алгоритмическое мышление, от чего вряд ли стоит отмахиваться, если заниматься программированием профессионально. Хотя, у меня есть друг-программист, который закончил обычный технический ВУЗ, никак не связанный с программированием, но как программист – он сильнейший, в нашей регионе.

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


    1. AnSt Автор
      07.11.2024 12:45

      По теме конкурсов - а хакатоны вам не подходят?

      А почему вам не нравится командная работа?


      1. Emelian
        07.11.2024 12:45

        По теме конкурсов - а хакатоны вам не подходят?

        Ну, «хакатон» это командный «хакерский марафон». Что-то типа телепередачи «Что? Где? Когда?». Интересно наблюдать, но участвовать это на любителя. Я сторонник конкурсов на «результат» без явных ограничений по времени. Конкурсы «Кванта» в этом смысле были «дешевы и сердиты». Время – месяц, задачи – на выбор. Красота! Плюс это был всесоюзный конкурс, что давало особый стимул.

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

        В качестве примечания могу отметить, что хакерские (точнее, крэкерские) задачи меня раньше интересовали. См., например, мой сайт https://erfaren.narod.ru/ (опубликованный еще во времена, когда наша Луганская область была в составе Украины). Знаю, что его посещал даже автор «широко известного в узких кругах» «народного» дизассемблера «IdaPro» Ильфак Гильфанов (судя по тому, как он закрывал «дыры», о которых я писал в статьях, в своем продукте). Что интересно, Ильфак тоже окончил мехмат МГУ, как и я. Более того, у нас даже был общий научный руководитель, только мы не пересеклись, так как были на разных курсах.

        А почему вам не нравится командная работа?

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