Я хочу вам рассказать о том, как я организовал бесплатный кружок по программированию для детей в одной московской школе. Возможно, мой опыт будет полезным желающим заняться чем-то подобным, а ваши комметарии будут полезны мне сделать кружок лучше.
Где-то пол года назад я загорелся желанием открыть свой кружок по программированию для детей. Решил, что было бы замечательно набрать группу детей и обучить их полезному языку программирования и познакомить с основными технологиями, которые применяются совместно с программированием и смогут пригодиться в реальной жизни, например, работа с HTTP и базы данных.
Выбор языка программирования
Первым делом надо выбрать язык программирования. Первое, что пришло в голову — Java. На этом языке я пишу последние два с половиной года. Простой и понятный для изучения язык, плюс, он мне нравится. Но не хочется ставить JVM, смущает необходимость компиляции и ощущение, что не подходит этот язык для школьников 5-8 классов.
Тогда я вспомнил про PHP. На нем я писал около двух лет. Он так же достаточно прост в изучении, программы легко и быстро запускаются. Но смущает ориентированность на веб.
Был у меня небольшой обыт с JavaScript. Устанавливать ничего не надо. Управление элементами в браузере — это достаточно интересно. Но меня напрягало с ним работать. Совсем не слушался, ошибки трудно искались. Вероятно, я не умею его готовить.
Использую в работе PL/SQL — но это совсем не то. Ничего мне не подходит из того, с чем я знаком. Надо посмотреть на готовые решения. Нашел кружок в Яндексе — Питон. Затем нашел еще человека — опять Питон. Полистал Википедию, полистал Хабр и Питон меня заинтересовал. Жаль, я не знаю языка. Но, думаю, это не большая проблема, главное — быть на 1-2 шага впереди своих учеников. Как плюс — новый полезный язык в копилку своих знаний. Решено — использую Python3.
Поиск школы
Пора найти школу, где есть человек 15 желающих учиться программировать. Для начала решил создать сайт для кружка, чтобы было что показывать директорам. Завел поддомен для кружка на своем сайте. Поставил туда WordPress. Написал примерный план занятий и немного информации о себе. На всё про всё — пару часов. Решил искать школу рядом с домом. Сразу определился, что занятия будут идти 1 раз в неделю по четвергам. Было бы удобно сразу после работы по пути идти на занятия. Позвонил в самую удобную для меня школу рядом с домом, договорился о встрече с директором.
Встреча состоялась через несколько дней. Г-жа деректор не проявила особого интереса и с недоверием отнеслась к бесплатности кружка. Основной проблемой стало выделение школьных компьютеров для занятий. Говорит, что дети всё портят. Обещала переговорить со своими учителями информатики и перезвонить. Жду звонка.
Прошла неделя. Надоело ждать. Позвонил сам. В школе ответели, что пока не решили с учителями. Обещали перезвонить позднее. Прошла еще неделя. Никто не звонит. Позвонил директору в другую школу. Там директор дала моментальный отказ, аргументировав следующим:
1. Здоровье детей и так слишком подорвано компьютерами
2. В школе информатика и так сильная
3. Какие-то проблемы с оформлением кадров
Выбрал еще несколько школ рядом с домом для обзвона. Позвонил сначала в школу с математическим уклоном. Директор там — математик. Возлагаю на нее большие надежды. Директор сказала, чтобы я написал ей на email свое предлжение, что я и сделал незамедлительно.
Подготовка
Ура! Я получил положительный ответ! Мне сказали, что придется официально оформиться, а для этого потребуется сделать медкнижку и получить справки из психиатрического и наркологического диспансеров. Договорился о встрече, чтобы можно было всё детально обсудить.
Встреча прошла успешно. Потребуется составить и предоставить программу образования с календарным планом. Так же мне сказали, что со мной будет сидеть учитель информатики, т.к. он материально ответственный. Предоставили новенькие школьные ноуты и проектор без каких-либо проблем.
Кружок разрешили делать только для учеников школы. Сказали, что для детей других школ пришлось бы делать платный кружок, но возможность эту не исключили.
Дальше пишем объявление, рисуем агитационные листовки и начинаем рассеивать их с дерижаблей. Через две недели планируется первое занятие.
Объявления повесили в школе в 3-х местах и в электронном дневнике. Записалось 20 человек. Через день первое занятие. Волнуюсь. Надо готовиться.
Первые занятия
Из 20 записавшихся пришло 15 человек. Основная масса — 6-7 класс. Один человек из 5-го и двое из 8-го. Одна девочка. Я писал, что можно приходить со своими ноутами, но этого почему-то не сделал никто.
Оказалось, что програмированию у них в школе учат с 8 класса. Т.е. основная масса с программированием не знакома. Один из ребят изучает Delphi, другой — С++
Прошло уже 5 занятий. В среднем ходит 15 человек.
Проблемы, с которыми пришлось столкнуться
- Не все дети ходят на каждое занятие. Поэтому подачу нового материала приходится делить на 2 занятия. Это, конечно, не помогает тем, кто пропускает больше двух занятий, но таких уже значительно меньше и им можно помочь в индивидульном порядке
- Разная скорость усвоения материала. Приходится ко многим лично подходить и объяснять. В это время те, кто пошустрее начинают скучать. На следующем занятии хочу попробовать обучить шустриков помогать отстающим. Вообще странно, что некоторые ребята, если чего-то не понимают, просто молча сидят, ничего не делают и не просят дать им разъяснений. Таких надо вовремя успеть заметить и помочь им
- Времени, которое требуется на подготовку нужно больше, чем планировалось. Чтобы подготовить одно занятие у меня уходит примерно 3-4 часа. Больше потратить не могу физически, а иногда хочется, т.к. чтобы придумать что-то интересное, иногда требуется больше времени
- С ребятами во время занятий надо поддерживать личный контакт, вести диалог. Иначе, если много говорить самому — начинают скучать
Если у кого-то есть идеи, как можно развлечь юных программистов на занятиях и сделать их более интересными, делитесь в комментариях. Я, например, после каждого занятия даю ребятам домой головоломки типа тех, что загадывают на собеседованих, а перед каждым занятием обсуждается предыдущая. Все примеры программ стараюсь сделать связанными с реальной жизнью и осмысленными.
Подводя итоги, я хочу сказать, что очень доволен, что у меня всё получилось. Это здорово и интересно — придумывать различные задания, думать над тем как сделать свое дело лучше и интересней и наблюдать за тем, как оно получается. Всем спасибо.
Автор: shurik2533