Это перевод. Статья опубликована 10 июня 2018 года


Надоело программирование? Попробуйте учить других. Это самое приятное чувство: обучать кого-то этому мастерству и вдохновлять новых лидеров в нашей плодовитой области. Кто знает, что они могут создать? Может, это изменит наш образ жизни. И помните старую добрую поговорку: если не можете сами, то учите! ;)

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

Объяснения из реального мира


Техножаргон не годится: полиморфизм, многопоточность, Typescript и прочее. Эти слова ничего не значат для людей, которые не разбираются в программировании. Начните с самого начала. Что им известно? Они знают реальный мир. Поэтому при объяснении, например, суперкласса, вы можете сказать, что транспортное средство — это суперкласс, а самолёт грузовик автобус поезд самолёт и прочее — это подклассы. Люди поймут аналогию.

Терпение и награда


Обучение требует терпения. Крайне важно не торопить процесс, но вы должны направить ученика в нужный момент. В некоторых случаях люди раздражаются или расстраиваются — и просто хотят сдаться! Такова специфика решения головоломок и сути программирования, поскольку оно требует настойчивости. Со временем эти качества разовьются в ученике. Такому не научишь словами, но можно наградить его за достижения… и искренне отпраздновать победу!

Ещё одна ключевая причина важности терпения у вас как учителя — потому что все учатся с разной скоростью. Люди разные. Если кто-то не понимает вас, попробуйте подобрать другие слова и воспринять эту проблему как вызов для вас, а не для него.

Поощрение и позитивность


Вы знаете, что… ваш ученик может стать человеком, кто создаст следующий Facebook, Instagram, Trello, Slack, Microsoft, Linux, Mac, Google или другой сумасшедший продукт/сервис. Не стоит недооценивать силу учения и силу влияния. Поощряйте на полёт мысли, амбициозные действия и беспредельный рост — и укрепляйте эту веру позитивом… вы можете оказаться учителем человека, который создаст лекарство от рака.

Никогда не знаешь, как оно сложится.

Делитесь реальными историями


Люди легко погружаются в скуку. Главный вопрос в учёбе: в чём смысл всего этого? На самом деле это очень хороший вопрос. В основе лежит прикладная функция ценности и подсчёт, тратит ученик своё время впустую или нет. Так что чёрт побери… просто расскажите о перспективах. Поделитесь, каково это — быть разработчиком, каковы плоды нашего труда. Это прививает мотивацию — очень, очень мощный инструмент.

Ведите за собой и берите ответственность


Разумеется! Это отношения наставника > подопечного. Просто повторяйте это: должно быть понятно, кто ведёт за собой. О… ты не знаешь ответа? Я думал, ты наставник. Это твоя ответственность — учиться на лету и выдавать результаты. Всем будет гораздо лучше, если следовать этому принципу.

Подведём итоги


Обучать других полезно для вас. Всё время возникают новые задачи, и нужно всегда быть на шаг впереди. Но это также очень полезное занятие. Сравнение с объектами из реального мира помогает ученикам лучше понять новые концепции. И не забывать о позитивности и терпении — кто знает, чем они могут обернуться!

Удачи в программировании!

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


  1. r00tGER
    13.06.2018 09:59

    Палка о двух концах.

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

    С другой стороны — плодить себе потенциальных конкурентов? Ну и работодатели довольны (плати меньше, требуй больше — кандидатов полно).


    1. j_wayne
      13.06.2018 10:50

      ИМХО это неоправданное беспокойство.
      Если вы способны обучать, значит у вас уже есть фора по сравнению с ними.
      И почему сразу конкуренты? Младшие сотрудники. Если вы — сеньор, то нужен младший состав. Без него рутинные задачки сами будете делать.


      1. r00tGER
        13.06.2018 13:04

        У джуна есть и своя фора — возраст и горящие глаза. При должной мотивации, через пару лет будет наступать вам на пятки. Нет, не с точки зрения своего уровня, а с точки зрения предпочтительности для работодателя.

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


        1. j_wayne
          13.06.2018 13:09

          У джуна есть и своя фора — возраст и горящие глаза.

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


          1. r00tGER
            13.06.2018 13:26

            сеньор успеет от него оторваться

            В этом и проблема, что «выше» резко сокращается количество вакансий, а требования на какого-нибудь архитекта уже приличные (далеко не каждый сеньор потянет).
            Отрываться надо, а по сути не куда )))


            1. j_wayne
              13.06.2018 13:30

              С'est la vie) Такая индустрия.


            1. roscomtheend
              14.06.2018 09:41

              Зато потом берушь такого «сеньора», который сидел на месте без развития и конкуренции и фейспалмишь, слушая.


          1. andyshark1974
            14.06.2018 10:15

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


    1. akryukov
      13.06.2018 13:42
      +1

      Вы переоцениваете выхлоп от обучения. Живых людей делать проще, чем образованных.
      Успешность обучения зависит не от преподавателя, а от студента. От его природных способностей, прилежания и организации своего времени. Звезды складываются не так уж часто. Успешные студенты станут успешными и без преподавателя, просто чуть позже. Середнячкам можно помочь, но они вряд ли будут конкурентами. Безнадежным никак не помочь. Голову не переставить.


      Это значит что, при всем желании, преподаватель не сможет на одном своем профессионализме выпустить столько потенциальных конкурентов, сколько нужно для обваливания рынка.
      Плюс, каким бы вы ни были крутым разработчиком, вы первое время будете джуном в преподавании. Следовательно, первая пара десятков студентов, никак не будут потенциальными конкурентами.


  1. Busla
    13.06.2018 10:17

    Мне это напоминает популярный рецепт: «Не получается зарабатывать фотографом? — открой фотошколу!»


  1. Sinatr
    13.06.2018 10:36

    Кто такой Marty Jacobs? Зачем переводить его статью? Что в этой статье полезного (по какому критерию было принято решение переводить именно эту статью)?


    1. Sinatr
      13.06.2018 10:42

      И помните старую добрую поговорку: если не можете сами, то учите!
      Не знаю такой поговорки. Попытался найти — вместо поговорки нашел другой перевод.

      Вроде бы есть другая поговорка "'Those who can't do, teach" (сравните с «if you can’t do then teach» в оринигальной статье) и ее смысл совершенно другой, что-то вроде «учителя — те, кто не могут делать».


      1. dotme
        13.06.2018 11:10

        Зачастую бывает, что те кто реально могут что-то делать, совершенно неспособны учить. Это я не по поводу комментария, а по поводу поговорки вообще )))


        Учить и делать сравнивать невозможно ибо это как сравнивать теплое с мягким.


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


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


        И напоследок коротыш: учительница коллеге: "какие тупые ученики, я им десять раз уже рассказала, сама уже начала понимать, а они все никак!"


        Лучший способ самому глубоко узнать что-либо — попытаться это доходчиво кому-то объяснить! Это уже без шуток.


  1. alizar
    13.06.2018 10:57

    вместо поговорки нашел другой перевод
    Это не перевод, а скрапинг Хабра.


  1. andyshark1974
    14.06.2018 10:10
    +1

    Года 2 назад хотел начать учить детей возраста 10-11 лет программированию. Открыть курсы, например на Питоне и вперед… Стал поднимать старые педовские связи, спрашивать как лучше начать (слава богу у самого пед.образование и прекрасно понимаю что начать преподавание это не булочку испечь). И тут меня декан мат.фака нашего педа убила простым вопросом (убила, закопала а на могилке потопталась). Вопрос был очень и очень простой и короткий. «Ну хорошо, ты начнешь преподавать детям Питон. Им на изучение основ потребуется год-два. А что потом они будут делать?». И тут я встрял… потому что придумать занятие для детей по окончании курса программирования я не смог.

    Прекрасно понимаю что сейчас мне тут насуют кучу ответов разного плана, но задумайтесь. Вы выучили ребенка, дали ему обширный объем знаний, научили логике… И? Вероятность что половина детей спрыгнет в свободное плавание по разным причинам (потеря интереса, влияние Интернета, элементарно конфликт с преподавателем) достаточно велик. И получится что Вы дали ребенку знания и умения, вполне возможно что в объеме достаточно уложить средний банк (дети еще те прохиндеи). Но воспитать его Вы либо не удосужились, либо попросту не успели. Процесс воспитания нравственных тормозов достаточно долог, и требует много сил, нервов и эмоций.

    В итоге на выходе мы получим ребенка в подростковом возрасте, с кучей знаний и отсутствием тормозов. Плюс в 13-14 лет (да и до 20-ти) дети достаточно агрессивны и стараются показать свою независимость.

    Я не рискнул брать на себя подобную ответственность… В итоге пошел преподавать шахматы. Шахматы — это первый этап для подготовки программиста. Постановка логики и системности в возрасте 6-10 лет. Затем (по идее) — Скретч и Ардуино. А так и к 14-15 годам подойдем. В 14-15 изучать программирование самое то. Ребенок готов и психологически и технически.

    Так что преподавать программирование оказалось не так то и просто. Ответственность — это один из нюансов педагогики.


    1. akryukov
      14.06.2018 10:50

      Ну хорошо, ты начнешь преподавать детям Питон. Им на изучение основ потребуется год-два. А что потом они будут делать?

      А что они будут делать потом, на самом деле, не ваше дело. Вы ведь детей, в конце концов, не усыновляете/удочеряете и обязательства по трудоустройству (детей 13 лет) на себя не берете. Никто не будет (не должен, по крайней мере) принуждать посещать ваши занятия. Материал весьма специфический: придут те, кому реально интересно. Останутся те, кто реально его осилит.


      Вы выучили ребенка, дали ему обширный объем знаний, научили логике…

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

      Вы так говорите, как будто усвоение ребенком этого объема знаний зависит исключительно от вас. Это не так. Я очень сомневаюсь, что школьники, которые раньше не программировали, за год-два смогут усвоить такой объем знаний, который позволит уложить банк.
      Можно с тем же успехом сказать, что дети, которые ходят 2 года на курсы робототехники, могут сделать военный беспилотник.


      Впрочем я считаю, что питон для широкой массы 11 летних детей это как то рановато. Может быть только для особенных индивидуумов вроде 0xd34df00d. Но их проще пригласить к более старшим товарищам.


      А так и к 14-15 годам подойдем. В 14-15 изучать программирование самое то. Ребенок готов и психологически и технически.

      Странно видеть утверждение о том, что в переходном возрасте у детей тормозов больше, чем в 11 лет.


      Вероятность что половина детей спрыгнет в свободное плавание по разным причинам достаточно велик.

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


      1. andyshark1974
        14.06.2018 11:06

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

        А по поводу того на что способен ребенок при куче свободного времени — я, опять же — рисковать не хочу. Процесс получения знаний по теме преподавателя должен быть под контролем. Либо преподаватель должен знать что изучает ребенок. Способы ограничение и отвращения от ненужных знаний — их много. Но уж точно не запрет :-)

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


      1. andyshark1974
        14.06.2018 11:07

        А по поводу того «не ваше дело чем будут потом дети заниматься» — тут не согласен. Ой как мое. Даже не то чем они будут заниматься, но главное чтобы они не занимались непотребными вещами. А это, опять же, воспитательный момент в образовании.


        1. akryukov
          14.06.2018 12:45

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


          1. andyshark1974
            14.06.2018 12:54

            Нет, я не считаю Питон такой угрозой. И комментарий был совершенно не об этом.


            1. akryukov
              14.06.2018 13:06

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


              1. andyshark1974
                14.06.2018 13:14

                Хм. Возраст как минимум разный. Это раз. Знания — различное применение, это два. Контроль над обучением тоже отличается — это три. Там вообще все другое из-за возраста детей!

                Вообще-то комментарий был о том что преподаватель должен отвечать не только за подачу знаний, но и за воспитательный момент у детей. А дети в разные возраста разные (почитайте возрастную психологию).

                И дело не только в Питоне. Вот берешь ты ребенка, даешь ему знания, он их учит и… что он будет с ними делать потом? тот же питон выучит — и куда применять? В школе? Бестолку. Там преподаватели на Питоне не пишут. В Интернете? Ха-ха… Обрисуйте интересную картиночку чем с Питоном будет заниматься подросток 14-ти лет в Интернете. Мне интересно послушать будет. Только сначала возрастную психологию прочтите.

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

                И да — вспомните себя в 14 лет. Это интереснее.


                1. akryukov
                  14.06.2018 13:58

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

                  С этим согласен.


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


                  Сейчас думаю о том, что подход "сходить на все кружки понемногу" был бы намного полезнее. Допустим год на художку, год на юного техника, год на музыку.


                  И дело не только в Питоне. Вот берешь ты ребенка, даешь ему знания, он их учит и… что он будет с ними делать потом? тот же питон выучит — и куда применять?

                  В ответ могу привести вам ссылки на пару интересных комментариев от одного сельского школьного учителя. Он некоторое время назад написал статью из серии Горшочек не вари Необразованные люди.
                  https://habr.com/post/340480/#comment_10503692


                  Сегодня ко мне приходил в гости ученик. Через неделю он уходит в армию. В университет он не поступил, и во многом из-за меня — мы слишком увлеклись не тем чем надо (конкретно забили на математику, хотя могли подготовиться). Самое интересное, он и не расстроился, и даже не собирается никуда поступать. Увлекся обработкой естественных языков, сделал несколько переводчиков. Хорошо понимает чем Алиса отличается от Сири. Прикольно поболтали.

                  https://habr.com/post/340480/#comment_10500022


                  Один ученик заинтересовался нейросетями (11 класс). После MNIST стало интересно, а можно ли нейросеть научить распознавать возраст и пол человека, написавшего символ. Т. е. понадобилась база рукописных символов с указанием пола и возраста. Причем довольно огромная. Что он сделал, распечатал форму, дети (да и не только) ее заполнили, после чего, он их отсканировал. Далее небольшой скрипт с pillow, который разрезает скан-копию на фрагменты и все автоматически сортирует по папкам.
                  Вот в этом плане Питон очень хорош. Причем я бы не сказал, что мы его прямо учили (по моим ощущениям, оно как-то само происходит). Ребята начинают что-то делать, если что-то не получается разбираемся, и делают дальше.

                  От себя добавлю. Питон можно применять для:
                  1) Создания простеньких веб-сайтов. Для некоторых это может даже стать первым заработком.
                  2) Создания чат-ботов под какие-нибудь платформы. Может быть даже для связи поделок на ардуино с мессенджером.
                  3) Машинного обучения. Питон тут практически основной язык. При желании можно разобраться.


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


                  А так же преподаватель должен понимать зачем он этим вообще занимается.

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


      1. 0xd34df00d
        14.06.2018 17:35

        Я на самом деле рад, что в 11 питон мне не давали.

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