Из психологии известно, что игра — это особый вид деятельности, при котором ребенок (и взрослый тоже) символически познает окружающий мир, осваивает знания и умения. В продолжение темы об обучении подростков программированию, в которой не было особой конкретики, я подыскал материал об обучении программированию детей и перевел первую часть, которая как раз и касается обучения программированию играми. Дальше — текст Маршалла Брейна.
Допустим, у вас есть дети и вы хотите помочь им научиться программированию с первых лет жизни. Я — отец четверых детей, поэтому не раз подступался к решению этой проблемы с разных сторон и теперь хотел бы изложить некоторые идеи для тех родителей, которые, как и я, находятся в поиске.
Под катом — список игр для детей, которые только начинают знакомиться с программированием либо продолжают знакомство, и учебники для тех, кто готов создавать игры самостоятельно
Начнем с самого важного и очевидного: все дети разные. Некоторые ребята научаются бегло читать и писать почти без труда, опережая в этом сверстников на несколько лет. Им, пожалуй, будет проще освоить программирование. У кого-то исключительно рано развиваются базовые аналитические навыки (вот, например, история о девятилетнем ребенке, пишущем полнофункциональные программы для iPhone). И так далее.
Возможно, вы уже пробовали познакомить ребенка с программированием, и с первого раза ваше чадо не заинтересовалось сим процессом. Я считаю, что это происходит из-за индивидуальных различий. Можно сделать второй заход спустя несколько месяцев, используя другой, более индивидуальный способ. Впрочем, вполне может статься, что когда вы попробуете привить у ребенка интерес к программированию, он сразу даже не поймет, о чем идет речь.
Далее нужно осознавать, что у некоторых детей аналитические способности, необходимые в программировании, начинают проявляться лишь в 11-12 и даже в 13 лет. Вполне возможно, что до этого возраста никаких стремительных успехов достичь не удастся.
Выходом может оказаться игровое обучение: создано множество интересных «программерских» игр, которые можно вводить уже с 5-6 лет.
Игры для начинающих
Начнем с самого простого. Вот несколько игр, которые особенно понравились моим детям. Они в разной форме развивают навыки решения задач:
• Magic Pen (подождите 15 секунд, пока не появится слово «Play»);
Если окажется мало, то всегда можно дополнительно поискать в интернете, там наверняка найдется еще много подобных «проблемно-ориентированных» игр.
Далее обращаю ваше внимание на следующую игру, которая отлично развивает базовые навыки программирования:
• Light-Bot (кнопка «Play» находится справа внизу, появляется после загрузки рекламы).
Мне очень нравится Light-Bot. Дети от 7-8 лет могут провозиться с ней и два часа. Но некоторые задачки из Light-Bot слишком сложны для детей. На помощь тогда придет YouTube, где есть ролики, которые помогут пройти отдельные уровни.
А вот эту игру мне посоветовал друг: MindRover: The Europa Project.
LOGO
Возможно, когда вы познакомитесь с Light-Bot, эта игра немного напомнит вам LOGO — язык программирования для маленьких детей. В сети есть масса информации о языке LOGO.
Игры посерьезнее
Мои дети довольно долго играли в Lego Mindstorms. Это виртуальный конструктор для собирания роботов. Мне доводилось видеть некоторых шестилеток и семилеток, способных писать для этого движка вполне функциональные программы. В игре применяется графический язык программирования, понять который не составляет труда. Если вам не жалко потратить $200 на такое удовольствие — очень рекомендую познакомиться с этой игрой поближе. Если вашему ребенку она понравится, также обратите внимание на «Первую лигу Лего» (FLL). Команды FLL конструируют роботов Mindstorms, работают над презентациями и т. д. Один из моих детей несколько лет играл в команде FLL с большим удовольствием.
Основное достоинство Mindstorms, на мой взгляд, заключается в том, что этот инструмент позволяет детям мастерить интересные вещи. Проблема лишь в том, что через пару месяцев вы вполне можете исчерпать все возможности игры. Конечно, на YouTube есть ролики, где взрослые дяди выделывают с игрой захватывающие и сложные штуки, но мне кажется, что эти люди — гении.
Один приятель посоветовал мне бесплатный ресурс для программирования моделей роботов.
Еще одна вещь такого рода — это язык Phrogram, ранее называвшийся Kids Programming Language (KPL). Основное достоинство, отличающее KPL, — занимательность, кроме того, это был бесплатный язык. На сайте языка можно было найти десятки готовых программ, связанных с решением как очень простых, так и сложных задач. Например, там был просто отличный симулятор бильярда. Но по каким-то причинам разработчики закрыли проект KPL и переделали его в Phrogram. Phrogram стоит $50, и хоть я не пробовал с ним работать, но, полагаю, он похож на KPL, и за него можно заплатить такую сумму.
В следующих статьях отец-программист подробно описывает, как научил свою дочь программированию, воспользовавшись инструментом Greenfoot:
часть 1;
часть 2;
часть 3;
часть 4.
Очень интересный материал. Автор с дочерью смогли создать крайне занятные вещи, пользуясь объектно-ориентированными приемами.
В подобном объектно-ориентированном ключе написана бесплатная система Scratch, разработанная в Массачусетском технологическом институте.
Если же ваши дети, наигравшись, захотят сами попробовать писать игры, попробуйте этот ресурс. GameMaker — довольно продвинутый инструмент со множеством опций. На сайте есть мануалы, помогающие освоиться с системой. Я бы не сказал, что это идеальный вариант для первой попытки, но при наличии некоторого опыта — в самый раз.
Еще есть бесплатный электронный учебник по написанию игр на Python, который, как утверждают авторы, «рассчитан на детей 10-12 лет, но отлично подойдет и для читателей любого возраста, которые еще не пробовали себя в программировании».
И, наконец, еще один интересный сайт.
И этот.
Релоцировались? Теперь вы можете комментировать без верификации аккаунта.