Работа клуба строилась очень просто. Каждый юный программист получал от нас с напарником идею компьютерной программы. Программист и автор идеи разрабатывали требования к программе. Автор выступал тестировщиком и приемщиком. Программисты в отведенные часы приходили в компьютерный класс и работали. После обеда и до самого вечера компьютерный класс школы в основном работал на наш клуб.
Основы программирования все ребята знали, программировали на Паскале. Никто ребятам не читал лекции. На клуб были закуплены все книги по разработке ПО, которые были в продаже. Любая возникающая проблема решалась самим программистом. В любой момент он мог обратиться за помощью к клубу.
Клуб не готовил к олимпиадам. Он учил разрабатывать конечные программные продукты. Сложные олимпиадные задачи могли решать немногие члены клуба, и они учились их решению в других местах. В клубе доминировал проектный подход, хотя о нем еще тогда не говорили. Очень быстро первые члены клуба вышли на вполне профессиональный уровень разработки.
Я уже писал про математический тренажер «Метеоритная атака». Он и еще один тренажер в 1994 году заняли призовые места на международном конкурсе «Borland-Contest», в котором участвовали команды и компании из СНГ. Еще одна наша программа «Генератор тестов Россь» занял тогда же первое место в номинации «обучающие программы».
Есть один нюанс с нашим участием в этом конкурсе. В нем было две категории участников: «профессионалы» и «юниоры». Юниоры – это школьные и студенческие кружки программирования вроде нашего клуба. Подали мы заявки, естественно, в категорию «юниоры». А свои призовые места генератор тестов и тренажеры получили как «профессионалы». Жюри своим решением наши заявки перенесло в более авторитетную категорию.
Участники в категории «профессионалы» были вполне серьезными. В соседней номинации первое место получила компания ABBY со своим переводчиком. И в других номинация победители были известными компаниями. А вот в обучающих программах доминировал наш клуб. При вручении дипломов и призов генеральный директор представительства Borland в России без микрофона сказал мне очень интересную вещь. Все члены жюри из ИТ-сектора голосовали за другого кандидата на первое место. Но члены жюри из МГУ и других образовательных структур в нашей номинации стояли горой за наш генератор тестов. За «оригинальные методические идеи и подходы», как он выразился.
Через год я создал свою первую компанию, в которой продолжили свою программистскую карьеру лучшие члены клуба. Набравшись опыта, они разлетелись по другим, более профессиональным и успешным компаниям. Встретить их сегодня можно по всему миру на самых разных должностях. Сектор образовательного ПО, не самый денежный во все годы, стал для них отличным карьерным трамплином.
Из этой длиной предыстории я хочу сделать один важный вывод для нашего последующего разговора. Начальные знания по языкам и технологиям программирования можно получать по-разному. Кому очень хочется, получит их самостоятельно. Но программистами становятся во время разработки конкретных проектов. Иного пути нет.
Тут-то и начинаются проблемы.
Интерес к программированию формируется рано. Основы можно закладывать уже в начальной школе. Для детей 9-12 лет на рынке есть несколько интереснейших платформ. Как правило, они базируются на специальных учебных языках программирования, адаптированных к детскому возрасту.
Наибольшее распространение получила визуальная событийно-ориентированная среда программирования Scratch. В ней есть все, чтобы увлечь детей начальных и средних классов. Интеграция с учебными платформами робототехники еще более повысила интерес к этой среде. Ничего лучшего можно и не искать.
Примерно в 13-14 лет дети превращаются в подростков. У них меняется мотивация и отношение к жизни, к будущей карьере. Они освоили учебную среду программирования и готовы к новым свершениям.
Им больше не интересны даже самые сложные задачи и проекты на языке, который во взрослой программистской жизни никому не нужен. Рассказы про возможность освоить объектно-ориентированный подход на учебном языке их не вдохновляют. Они считают себя готовыми к изучению «настоящего программирования».
К их услугам огромное число самых разных онлайн-курсов и видеоуроков для начинающих программистов. В любом городе разного рода «ИТ-академии» предлагают очные курсы для начинающих программистов, дизайнеров, тестировщиков. Выбирай и изучай, вроде бы нет никаких проблем.
Нет ничего принципиально сложного для сообразительного подростка 14 лет в курсах по изучению основ HTML, CSS, JavaScript. Старшие товарищи в один голос советуют начинать именно с этого. И подростки начинают.
Ученики с хорошими общими компетенциями изучают основы самостоятельно в интернете. Другие идут на очные курсы. Через полгода-год все заканчивается. Основы освоены, а дальше – ступор. В результате в 14-15 лет карьера программиста обрывается. В лучшем случае молодой человек вернется к ней на первых курсах университета. В худшем – уже никогда.