Как изучить программирование если вы ребенок. Программирование для детей - методики обучения в игровой форме, языки и специальные программы

Интересоваться игровой разработкой начинают дети всё более юных возрастов. Информации в наше время можно найти предостаточно, пожалуй, её даже с избытком. Это руководство поможет юным читателям или их родителям познакомиться с миром разработки игр. И что же это, собственно, значит? Во-первых, я сосредоточусь на технологиях, подходящих новичкам. Во-вторых, я не буду строить догадок об уровне ваших технических познаний, допуская, что он может быть нулевым. Поэтому, если будет казаться, что я считаю вас недостаточно умными или говорю снисходительно – это не так! И наоборот, если что-то будет не до конца понятно, дайте мне знать, и я постараюсь всё прояснить.

Слишком юный возраст – это сколько?

Наверное, самый распространённый вопрос. Сколько лет должно быть мне (или моему ребёнку), чтобы знакомиться с игровой разработкой? Ответить на него невозможно, поскольку все дети разные. На самой нижней ступени (при использовании подходящих инструментов) по-настоящему заинтересованный 6-летний новичок уже может достичь определённых успехов. На другой стороне спектра в 12 лет для этих успехов уже должно быть достаточно образовательной базы и умственных способностей. Реальный возраст получается где-то посередине.

Для начала нужно усвоить несколько критически важных вещей.

Первое – мотивация. Именно отсутствие мотивации, а не умственных способностей чаще становится преградой на пути к успеху. Если ваш ребёнок обожает творить (любить играть и любить делать игры – совсем не одно и то же) и готов к пробам и ошибкам, он идеально подходит для игровой разработки!

Второе – управление ожиданиями. Здесь мы теряем большую часть потенциальных разработчиков, независимо от возраста. Разработка игр – не самое сложное в мире занятие, но оно достаточно комплексное. Ваш ребёнок не будет в скором времени работать над масштабными современными играми, вроде Call Of Duty или NHL, не будет делать MMO-проекты. Начинать нужно с чего-то очень скромного и постепенно двигаться дальше.

Если ребёнок убеждает себя, что собирается делать новый Minecraft, его ждёт очень болезненная неудача. С другой стороны, установка «когда-нибудь я сделаю новый Minecraft» может отлично сработать. Тут очень важно понимать разницу. Как и с любым другим навыком, этот следует развивать постепенно. Попытка взяться за слишком серьёзное дело приведёт лишь к провалу и разочарованию. Для справки, сам я начал программировать лет в 8 на Atari BASIC.

Что вообще такое игровая разработка?

Здесь мы слегка углубимся в технические аспекты. Игровая разработка – обобщающий термин, подразумевающий множество навыков, направленных на создание одного большого творения. Представьте, что вы занимаетесь производством автомобилей. Одного навыка для этого недостаточно, вам нужны инженеры, дизайнеры, сборщики, тестировщики и множество других специалистов, чтобы сделать одну машину. Однако весь перечень необходимых задач может выполняться одним человеком. Есть немало успешных игр, написанных, нарисованных и выпущенных одним человеком. Впрочем, важно понимать, что это редкие случаи. Я говорю о том, что весь процесс разработки не сводится к одной задаче, их несколько. И если ребёнку по душе что-то одно, другое может и не понравиться. Важно помнить это при выборе программ, проверяя наличие образцов графики и звука, чтобы не приходилось абсолютно всё делать самостоятельно.

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

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

С видеоиграми всё точно так же. Первая задача обычно называется программированием, вторая состоит из наполнения игры графикой, анимацией, звуком и музыкой. Для всего этого требуются совершенно разные навыки, но без них, как правило, не обойтись. Наша статья сосредоточится на программировании – когда дети интересуются разработкой игр, они думают именно об этом. Если ребёнок хочет рисовать графику для игр, то скорее всего уже и так делает наброски в блокноте! И это, кстати, правильный подход, ведь разница между «художником» и «игровым художником» минимальна.

Что такое программирование?

Итак, когда речь идёт об игровой разработке, скорее всего имеется в виду программирование. Что это такое? Проще всего сказать, что это искусство объяснять компьютеру, что он должен делать. В контексте разработки игр это значит делать вещи, вроде «если игрок нажимает кнопку «вверх», сделать то» или «если здоровье падает до нуля, сделать это».

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

По большому счёту, существует три способа говорить компьютеру, что делать (зачастую дело сводится к их комбинации):

Распространённый подход среди новичков, да и среди разработчиков вообще (к примеру, в популярном коммерческом движке Unreal Engine 4 есть интерфейс визуального программирования Blueprints). Вы формируете игровой экран, перетаскивая элементы, впоследствии связывая их подобием блок-схемы. Если ваш ребёнок мыслит визуальными образами, это лучший выбор.

Скриптовые языки

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

Этот кусочек текста указывает компьютеру загрузить изображение «whale.png» и вывести его на экран.

Традиционные языки программирования

Наконец, многие игры пишутся на традиционных языках: C++, Java, C# и других. Сразу скажу прямо, что не советую юным игроделам начинать с традиционных, или, если точнее, компилируемых языков по ряду причин.

Главный вопрос, который может у вас возникнуть: чем отличаются скриптовые и компилируемые языки? В основном различия касаются технических подробностей, выходящих за пределы данной статьи, но в целом всё сводится к комплексности. Работа с компилируемым языком затрагивает множество вещей, о которых не нужно думать в скриптовых языках: компиляция (превращение написанного вами текста во что-то, понятное компьютеру), линковка (тут в двух словах и не объяснить) и многое другое.

Более важным различием выступает назначение. Скриптовые языки в основном направлены на решение конкретных задач для упрощения жизни разработчика. Если вкратце, скриптовые языки гораздо проще в изучении и использовании.

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

IDE, библиотека, что???

Ладно, это последний вводный момент. В тексте будет много не самых понятных терминов и выражений, так что я вкратце их поясню.

Язык. Имеется в виду язык программирования. Мы общаемся между собой на разных языках, и с компьютером тоже можно говорить на разных. На примере выше показан язык Lua.

IDE. Интегрированная среда разработки (Integrated Development Environment) – приложение, отвечающее сразу за множество задач. Не все описанные программы включают IDE, то есть для разных работ вам может понадобиться разный софт. Обычно среда разработки содержит текстовый редактор, язык программирования и ряд других инструментов.

Библиотека. Представьте, что это некто, делающий за вас кучу работы. Как правило, даже «простые вещи», вроде вывода на экран, не являются частью языка. Эти вещи создают другие люди, делая их доступными в виде библиотек. В некоторых случаях (в GameMaker или Construct) всё это уже собрано для вас воедино. В Lua, к примеру, вам требуется самому выбирать библиотеку. У каждого подхода есть свои плюсы и минусы. Gamemaker многое упрощает для начинающих, зато Lua позволяет сменить библиотеку на более удобную.

Спрайт. Это используемая в игре графика, например, персонаж игрока. Спрайт может быть картинкой или содержать множество анимаций. Точное значение спрайта в каждом движке своё, но в игре это всегда видимый движущийся объект. В Super Mario Brothers это Марио, черепахи, огненные шары и т.д. Сам мир при этом – небо, трубы и прочее – не обязательно состоит из спрайтов.

HTML 5. Здесь не всё может быть понятно сразу. HTML 5 – это последняя версия HTML, языка разметки веб-страниц. При загрузке сайта в браузере компьютера или телефона вы видите HTML-документ. Но HTML5 – это ещё и обобщённый термин для множества технологий, на которых держится работа веб-сайтов. Сюда входит сам HTML, CSS (ещё один язык, определяющий внешний вид страниц) и JavaScript, скриптовый язык, отвечающий за логику. Люди часто пользуются HTML, HTML5 и JavaScript как взаимозаменяемыми понятиями, хотя технически это не совсем верно. HTML5 может использоваться для создания игр, и с ним не обязательно работать в самом браузере.

Отладчик. Когда игра не работает, как надо, бывает непросто выяснить, почему. В некоторых пакетах для этого существует так называемый отладчик, средство для выявления проблем или «багов». Для новичков это довольно продвинутый инструмент, но когда в нём возникает необходимость, отладчик нельзя переоценить.

Средства игровой разработки, подходящие для детей

Итак, переходим к непосредственной сути статьи – инструментам, способным познакомить вашего ребёнка с миром игровой разработки. Это ни в коем случае не всеобъемлющий список! В каждом пункте я расскажу, что входит в комплект программы, на примере покажу, как она работает, опишу плюсы и минусы, укажу цену, если она есть и приведу ссылки на учебную литературу. Осталось отметить один момент… каждый из вариантов может быть полезен, здесь нет «лучшего» выбора. Выбирайте на основе предпочтений вашего ребёнка. Если первый выбор не сработал, пробуйте что-то другое.

Список построен без определённого порядка.

Scratch

Это проект, финансируемый Массачусетским технологическим институтом и направленный на обучение программированию детей от 8 до 16 лет. Программа появилась на свет в 2006, и с тех пор собрала вокруг себя крупное сообщество. Особый упор делает на привлекательность для всей семьи. Для работы Scratch нужен только браузер, вы просто заходите на сайт и начинаете программировать. Scratch включен в вводный курс по компьютерным технологиям Гарварда и Йельского университета CS50 . Для сохранения результатов требуется регистрация, но она простая, и даже не требует подтверждения по электронной почте.

Scratch относится к категории средств визуального программирования. Ребёнок переносит актёров на сцену и управляет ими с помощью Lego-образных блоков программирования. Блоки выступают неплохим аналогом структуры настоящих языков программирования, так что впоследствии в них будет проще разобраться. Документации доступно много, а примеров программ буквально тысячи.

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

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

Для программирования в Scratch используются блоки. На изображении показана категория Внешность. Как видите, выбор категорий достаточно широк.

Scratch – это решение «всё-в-одном», для работы вам больше ничего не понадобится. В комплекте присутствует множество сцен, фонов и звуков.

Scratch абсолютно бесплатен и существует за счёт спонсорской поддержки.

Книги (да, есть на русском):

  • Первая книга юного программиста. Учимся писать программы на Scratch — Юлия Торгашева
  • Творческие задания в среде Scratch. 5-6 класс. Рабочая тетрадь — Юлия Пашковская
  • Программирование для детей. Иллюстрированное руководство по языкам Scratch и Python — Кэрол Вордерман

У Scratch есть и приложение для iPad под названием ScratchJr для детей 5-8 лет. Тоже совершенно бесплатное. Ничего не нужно покупать или скачивать, для знакомства с программой не нужно даже регистрироваться, так что Scratch можно назвать наиболее доступным вариантом из списка.

Construct2

Construct2 – ещё один движок, основанный на визуальном программировании. Игры создаются в интерфейсе с перетягиванием элементов, а логика контролируется системой событий наподобие блок-схем. Если функциональности недостаточно, можно создавать собственные плагины при помощи JavaScript, хотя это уже довольно сложно и вовсе не обязательно – Construct2 задуман так, чтобы всё управлялось событиями. Конечный результат работы представляет собой HTML5, его можно экспортировать на разные платформы, включая мобильные устройства (Android, iOS, Windows Mobile), браузеры и настольные системы.

Construct2 куда более комплексный инструмент в сравнении со Scratch, что говорит о двух важных вещах. Во-первых, крутая кривая обучения делает его неподходящим для маленьких детей, и он не делает упора на обучающий подход. С другой стороны, это относительно простой инструмент уже не для изучения азов, а для создания игр. Это значит, что ваш ребёнок не скоро столкнётся с какими-либо ограничениями. В Construct2 создано немало коммерческих игр.

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

Construct устанавливается на компьютер под управлением Windows. Mac на данный момент не поддерживается.

Так выглядит программирование в Construct2. Здесь изображён код, описывающий реакцию игрового персонажа на входные данные; взято из заготовленного примера простого шутера.

Позволяют быстро добавить объекту предопределённое поведение.

Construct2 – это решение «всё-в-одном», для работы вам больше ничего не понадобится. С самого начала он не изобилует игровыми ресурсами, зато есть доступный для бесплатного скачивания увесистый пакет ассетов (осторожно, ссылка прямая, архив весит 38 Мб). Для платных версий предусмотрены дополнительные ассеты.

Если захотите делать свои плагины, вам понадобится JavaScript SDK (доступен бесплатно) и инструмент для редактирования текста, поскольку в Construct его нет.

Construct2 доступен в разных версиях:

  • Бесплатная версия – созданные игры можно запускать только в браузере, меньше ассетов и ряд ограничений на сложность игр. Ограничения не должны быть большой проблемой, по крайней мере, сначала.
  • Персональная версия – стоит $129, можно делать игры для iPhone, Android и настольных систем, больше звуков, музыки, спрайтов и других ассетов.
  • Бизнес-версия – по сути, то же, что и персональная, только стоит дороже и требуется к приобретению после превышения порога прибыли в $5000 (если у вас возникает такая проблема, это хорошо!).

Книг на русском я не нашел. Есть перевод вводного курса . Уроки Construct2 на русском .

Game Maker

GameMaker – гибридная система «всё-в-одном», объединяющая визуальное программирование с собственным скриптовым языком GML. Изначально игры работают только на Windows, но в платной версии их можно создавать и для браузеров, iOS, Android, Windows Phone и других платформ.

Программирование в GameMaker может строиться на блок-схемах на манер Construct2. Есть возможность писать код на скриптовом языке GML. Это сразу и плюс и минус. С одной стороны, это гибкая система, с другой стороны, разбираться в ней сложнее. Поскольку это собственный язык GameMaker, многие полученные навыки окажутся не столь полезны при переходе к другому средству разработки. Конечно, основные концепции программирования от языка к языку не меняются, так что это не особо серьёзная проблема.

Помимо необходимых ассетов в GameMaker есть буквально всё, что только может понадобиться, правда, качество инструментов варьируется. В дополнение к программированию вы можете самостоятельно создавать графику, звук и уровни – всё это в одном приложении. Среди игр, созданных в GameMaker есть очень успешные проекты – например, оригинальная версия Spelunky и Hotline Miami (не для детей).

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

GameMaker включает всё, что вам нужно, будь то редактирование кода, создание и редактирование изображений, дизайн карт или что угодно ещё. Есть в комплекте и встроенный отладчик. Правда, в стандартной версии не так уж много примеров работ. На самом деле, их вообще нет. Впрочем, благодаря активному сообществу, в сети без труда можно найти кучу примеров и уроков. Качество материалов может быть самым разным, и сами Yoyo Games ими не занимаются, так что хорошие уроки придётся ещё поискать.

С лицензиями GameMaker не всё так просто, поскольку ценовая структура поменялась, но не все материалы успели обновиться.

  • Начальная версия сильно ограничивает использование ресурсов и скриптов. Впрочем, обновление до версии Standard требует только подтверждения почты, на которую вам вышлют ключ продукта.
  • Ещё есть версия Professional за $100 с функционалом для совместной работы (вам пока не требуется). Главное отличие этой версии в том, что можно покупать отдельные модули для поддержки экспорта на другие платформы ($200 за каждую). Например, если вы хотите разрабатывать под Android и iOS, придётся в сумме заплатить $500.
  • И, наконец, версия Master со всеми доступными платформами стоит $800.

Для начинающего разработчика хватит и простой зарегистрированной версии. Если поглядываете на Professional, она нередко бывает на распродажах в Steam.

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

Lua и LÖVE

Lua – скриптовый движок, а LÖVE – библиотека для создания игр. Изначально Lua был языком программирования для «не-программистов» и быстро стал популярен в качестве скриптового языка для коммерческих игр, таких, как эти . У данного варианта есть одно большое преимущество перед, скажем, GML. Lua используется повсюду и многим знаком, так что знать его будет полезно. В плане изучения язык довольно прост.

LÖVE – это библиотека для создания игр с помощью Lua. Она предоставляет практически весь функционал, необходимый для создания 2D-игр – вывод графики, проигрывание звука, управление входными данными, загрузку файлов и т.д.

LÖVE и Lua недостаточно самих по себе, вам понадобится ещё текстовый редактор для написания и правки скриптов, софт для создания графики и записи звука, редактор карт для дизайна уровней и подобные вещи. К счастью, всё это есть в бесплатном доступе, и ниже я приведу примеры. Только скачивать всё придётся по отдельности. Вместе с LÖVE не идёт никаких ассетов, но с этим вам помогут ресурсы вроде Open Game Art и FreeSound . Опять же, всё надо скачивать самостоятельно.

Главный минус LÖVE – отсутствие поддержки мобильных платформ. В данный момент библиотека позволяет делать игры только для компьютеров, хотя в будущем обещают и мобильные устройства.

Библиотека LÖVE содержит Lua, поэтому сначала идём только сюда , а потом сюда за документацией для новичков. Однако, вам ещё нужен текстовый редактор и программы для графики и звука.

Для простого набора текста есть два популярных варианта: Notepad++ и Sublime Text .

Впрочем, для разработки на Lua я бы советовал пользоваться – это скорее IDE с поддержкой автодополнения кода, отладки и подобных вещей. Ах, да – ещё она бесплатная.

Для создания уровней и карт отлично подходит бесплатный редактор Tiled .

Об альтернативах – Lua в качестве скриптового языка используется во многих популярных средствах разработки, например, в Corona , Gideros и Marmalade Quick . Все они сложнее LÖVE, поэтому её я и рекомендую. Однако, они отлично демонстрируют, насколько полезным может быть знание Lua.

Lua и LÖVE бесплатны, за ZeroBrane вы платите, сколько пожелаете.

Только одна из книг описывает программирование именно на LÖVE.

  • Программирование на языке Lua — Роберто Иерузалимски

Поиск материалов по библиотеке затрудняет распространённость слова love, так что добавляйте в запросы lua.

Python и PyGame

Это ещё одна комбинация языка и библиотеки. PyGame во многом похожа на LÖVE и дружелюбна к новичкам. В ней используется Python, популярный скриптовый язык, хотя он более известен в мире 3D-графики, чем в разработке игр. Часто используется IT-профессионалами для автоматизации задач, поэтому знание Python пригодится даже за пределами игровой разработки. На этом языке написано несколько известных игр .

PyGame обладает ожидаемой функциональностью, справляясь со звуком, графикой и вводом. Вам нужно позаботиться о редакторе текста и создании ассетов. Впрочем, в отличие от LÖVE, кое-какие ассеты и образцы уже идут в комплекте с PyGame.

Пользуйтесь советами для LÖVE, большинство указанных инструментов помогут и тут.

Конечно, не считая ZeroBrane – в качестве аналога советую ознакомиться с PyCharm (есть бесплатная версия). Это не самый простой редактор, но вы всегда можете работать в обычном Notepad++ или Sublime Text.

Python и PyGame бесплатны. У PyCharm есть бесплатная версия.

Stencyl – это набор средств визуального программирования, именующий себя «самым простым и быстрым способом создания игр», что вполне может быть правдой! По функциональности он схож с Construct2, программируете вы, конструируя сцену и снабжая её поведениями. Это решение «всё-в-одном» со встроенным графическим редактором, хотя возможность импорта изображений тоже присутствует. Писать скрипты в Stencyl нельзя, но можно создавать расширения с помощью языка Haxe, если вам не хватает функционала программы. Впрочем, это уже может выходить за пределы текущих способностей ребёнка – в этом случае пригодятся расширения, доступные в магазине.

Stencyl работает на Windows, Linux и Mac и по умолчанию создаёт только Flash-приложения. Другие платформы, в том числе iOS и Android, доступны за отдельную плату. Программа не может похвастаться массой ассетов в комплекте, но обеспечивает быстрый доступ к ним, плюс онлайн-справка весьма хороша.

Это решение «всё-в-одном». Если вы не углубляетесь в программирование расширений на Haxe, всё, что вам нужно, уже либо есть в комплекте, либо доступно по ссылкам прямо из приложения.

  • В Stencyl можно работать бесплатно, однако результатом будут только Flash-игры. Выпущенные игры снабжаются заставкой Stencyl во время загрузки.
  • За $99 доступна версия Studio, в которой можно создавать приложения для настольных систем. Заставка Stencyl в них отсутствует.
  • За $199 можно делать игры для iOS и Android.

Lego Mindstorm

Позвольте сразу же уточнить, что это очень, очень дорогая штука. Но если ваш ребёнок интересуется робототехникой или просто ярый фанат Lego, это подходящий способ познакомить его с программированием. Mindstorm Lego – это конструктор для создания роботов. В комплекте идут программируемые блоки, задающие поведение робота. Mindstorm предлагает постепенный прогресс в обучении: сначала робот собирается из кусочков конструктора, затем можно учиться управлять им при помощи приложения (для iPad или настольных систем), а потом уже начинать программировать логику.

Lego Mindstorm позволяет как самостоятельно управлять своими творениями, так и программировать их в приложении EV3 с помощью блок-схем. Есть и инструменты, позволяющие заниматься сколь угодно низкоуровневым программированием.

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

Готовый огнедышащий дракон Mindstorm, месяц на сборку

Дорого! Очень дорого!

  • Базовый набор с неполной локализацией можно найти от 22000 рублей
  • За дополнения придется заплатить еще больше
  • Из США доступен за 350 долларов плюс доставка

В электронном виде (ссылки на pdf-файлы) доступны руководство и учебный материал .

  • Конструируем роботов на Lego Mindstorms Education EV3 — Валерий Сафули, Наталия Дорожкина

Это уже не совсем «программирование игр», но определённо удобный способ знакомства со множеством навыков, которые для него нужны. И да, если бы мои родители подарили мне такое в детстве, я бы номинировал их на премию «Родитель года». Вот дочка подрастёт, куплю ей такой… хотя, может, это будет подарок для меня самого?

Особые упоминания

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

Моды для Minecraft

Если ваши дети играют в компьютерные игры, они уже могут быть знакомы с Minecraft. Моддинг – это модифицирование оригинальной игры, и в этом плане Minecraft особенно популярен. Моды могут быть удобным средством изучения программирования – или, по крайней мере, мотивировать к нему. Модами для Minecraft занимается очень много людей. Минус в том, что пишутся они на Java, а этот язык не подходит для детей младшего возраста. Впрочем, при должном интересе к игре, попробовать стоит. Узнать больше можно .

GameSalad

Это инструмент визуального программирования, наподобие Stencyl и Construct2. Использовался для создания коммерческих игр, доступна бесплатная версия, платные открывают доступ к другим платформам. Лично я GameSalad не пользовался.

Codea

Codea – приложение для разработки игр для iPad на самом iPad. Стоит $10, использует Lua и предоставляет собственную, простую в изучении библиотеку. Есть редактор кода, отладчик и средства для подключения к компьютеру. Можно подключиться к Mac и сделать вполне пригодную для выпуска игру. Набирать текст на iPad совсем невесело, так что беспроводная клавиатура практически необходима. Включает массу примеров и отлично подходит для детей, у которых имеется iPad (особенно, когда это всё, что у них есть).

Kodu или Project Spark

Это игра про создание игр. По факту, это игра, которую можно модифицировать, превращая во что угодно. Kodu – язык визуального программирования от Microsoft. Project Spark – модифицированная версия Kodu, вышедшая для XBox One. Это далековато от обычного программирования, но многие идеи (как и конечный результат!) те же самые.

Code Combat

Интересная концепция – браузерная игра, где персонаж управляется программированием. По мере продвижения по игре вас учат более сложным вещам. По сути, вы учитесь программировать, играя в игру. Изначально создавалась для обучения Javascript, но потом были добавлены и другие языки. Я убеждён, что она полностью бесплатна, так что вам ничего не стоит попробовать.

Alice

Alice – это средство для обучения программированию с интегрированной средой разработки. Вот собственные слова авторов:

Alice – инновационная трёхмерная среда, в которой можно без труда работать с анимацией, рассказывая истории, создавая игры или видео. Это свободно распространяемое обучающее ПО, предназначенное для знакомства учеников с объектно-ориентированным программированием. Оно учит фундаментальным концепциям программирования на примере создания анимированных роликов и простых видеоигр. В Alice виртуальный мир наполнен трёхмерными объектами (люди, животные, машины), и ученики пишут программы, с помощью которых они анимируются.

Alice поддерживается Университетом Карнеги – Меллон и абсолютно бесплатна.

RPGMAKER

RPGMaker Ace – это продукт, схожий с GameMaker, предназначенный для создания конкретного типа игр, относящихся к жанру jRPG. Его лозунг, буквально: «Достаточно простой для ребёнка, достаточно мощный для разработчика». С помощью RPGMaker сделано несколько коммерческих игр. Отлично подойдёт вашему ребёнку, если он поклонник жанра. Стоит $70, но часто бывает на распродажах в Steam.

Заключение

Конечно, я не углублялся в подробности, но зато прошёлся по большей части доступных вариантов. Если вы думаете, что стоит что-то добавить в список, дайте мне знать! Я постарался сделать статью понятной людям с любым уровнем знаний, но, разумеется, мог с этим не справиться. Если что-то непонятно, напишите. Главное, что не стоит забывать – все дети разные, и один и тот же подход работает не для всех. Выбирайте, что на ваш взгляд лучше подойдёт вашему ребёнку, и если что-то будет не получаться, знайте, что всегда есть уйма других вариантов!

Тут стремятся создать такую атмосферу, как будто дети уже работают в индустрии. Занятия проходят в настоящих офисах, а ведут их основатели и сотрудники крупных IT-компаний. «Мы готовим детей к поступлению в ведущие вузы, созданию бизнеса, работе в российских или международных технологических компаниях. Через программирование мы учим их думать самостоятельно и раскрывать свой потенциал», — говорит руководитель школы Оксана Селендеева. В Coddy преподают базовые и узкоспециализированные предметы: всего более 30 курсов. Программы построены таким образом, что окончив любую из них, ученик может перейти на следующий уровень и продолжить изучать курс углубленно. Занятия проходят 1 раз в неделю, в субботу или воскресенье, и длится 3 астрономических часа с небольшим перерывом.

Стоимость — 6000 рублей в месяц. Учебные площадки расположены на Курской, Белорусской, Павелецкой, Дмитровской и Площади Ильича. Подробности

1С: Клуб программистов для школьников

Это не школа и не технический кружок, а клуб для детей от 11 до 17 лет. Всего проект включает в себя 162 филиала по России и СНГ, 7 из которых — в Москве. Цель клуба — познакомить ребят с программированием, пробудить интерес к профессии. Здесь учат программировать на самых актуальных языках, которые используются везде: от мобильных телефонов и интернета до суперкомпьютеров. Также есть курсы по системному администрированию и управлению разработкой. А еще тут целенаправленно готовят к олимпиадам и ЕГЭ по информатике (средний балл по клубу - 72). Каждая программа рассчитана на пару лет в режиме 1-2 раза в неделю.

Стоимость — 700 рублей/занятие. Учебные площадки расположены на Бауманской, Новослободской, Алексеевской, Тимирязевской, ВДНХ и Ленинском проспекте. Подробности

Кодабра

Кодабра — это курсы для детей от 6 до 14 лет, ориентированные на создание игр. Здесь стремятся перенаправить в полезное русло любовь детей к компьютерным играм. Если ребенок тратит все свободное время на игры, то курсы по их созданию — это хороший способ сменить вектор с развлечений на развитие. В процессе обучения затрагивают физику, математику и другие базовые науки. Поскольку курсы разработаны cпециально для детей, учеба сопровождается играми. После каждого занятия у ребенка есть результат, который он может показать родителям и друзьям. Длительность одного урока — 1,5 часа, каждый курс длится 2 месяца (16 занятий).

Стоимость курсов от 5500 до 11 000 рублей в месяц. Занятия проходят по будням, на Шаболовской и Павелецкой. Подробности

КрашПро

В центре дополнительного образования для детей 6-16 лет КрашПро стремятся дать детям актуальные знания в востребованных областях и помочь им реализовывать собственные проекты. Всего в школе 10 программ, посвященных инженерным, творческим и digital-профессиям. Для большинства предметов в КрашПро нужно подрасти: они рассчитаны на учеников от 12 лет и старше. Для малышей от 6 лет работает курс робототехники: здесь учатся создавать роботов с помощью конструкторов Lego WeDo. В каждом из курсов ученики разбиваются на творческие группы и работают над выпускным проектом. В это время ребята узнают на практике, что такое «цели», «задачи» и «deadline».

Курс длится 3 месяца, стоимость семестра занятий по одной программе составляет 80 000 рублей (исключение — робототехника, 18 000 рублей). Занятия проходят в самом центре — на Воздвиженке. Подробности

Московская школа программистов

Трехгодичные курсы для учеников 8-10 классов, совместный проект «Яндекса» и Мытищинской школы программистов. Здесь используют не «школьный» подход к обучению, а, скорее, «университетский». Курсы делятся на обязательные и факультативные — определяющие специализацию. Обязательный курс включает основы, которые помогают изучить любой язык программирования. Это алгоритмическое мышление, некоторые «нешкольные» разделы математики, базовая кибернетика. Чтобы поступить в школу, нужно сдать вступительный экзамен. Знания по программированию на нем не требуются, зато проверяют математику и логику.

Курсы дорогие (стоимость одного семестра составляет 22 500 рублей), но эффективные: ученики школы регулярно выигрывают олимпиады всех уровней. Занятия проходят 1-2 раза в неделю по выходным в московском офисе «Яндекса» на улице Льва Толстого. Подробности

Moscow Coding School

Moscow Coding School не специализируется на детях, но предлагает несколько « детских» курсов. В конце ноября стартуют занятия по веб-программированию (HTML, CSS и JavaScript) для школьников 10-13 лет. В курс включили игровые блоки, практические самостоятельные задания и командную работу над кодом. За 6 занятий по 5 часов придется выложить 39 999 рублей. В декабре открывается еще одна программа для детей, посвященная цифровому творчеству и созданию электронных инсталляций. Во время этих занятий преподаватели постараются сформировать у студентов школы более чем 12 полезных навыков в программировании и креативном мышлении.

Стоимость этого курса 24 999 рублей за 4 занятия. Занятия проходят по субботам и воскресеньям с 10.00 до 15.00, в здании DI Telegraph на Тверской. Подробности

GoTo

В этот проект входят образовательные программы трех типов: летняя школа GoTo School, хакатон GoTo Hack и лагерь GoTo Camp. На GoTo Camp каждые каникулы собираются ученики 8-11 классов со всей России и ближнего зарубежья. Участник лагеря GoTo получает возможность реализовать проект или провести исследование в сфере программирования, робототехники, биоинформатики, анализа данных и других высокотехнологичных областей. Проекты курируют преподаватели лучших университетов страны и эксперты IT-компаний: МФТИ, ВШЭ, Иннополис, Яндекс, КРОК, Microsoft, Nival, Rambler&Co, Intel и др. Лагерь на зимних каникулах откроется в Подмосковье с 3 по 10 января.

Стоимость одной смены составляет от 16 000 до 26 000 рублей, также действует система грантов на обучение. Подробности

IT школа Samsung


Для самых старших школьников, в основном, учеников 10 класса, работает бесплатная образовательная программа от Samsung и ведущих преподавателей МФТИ. Основное направление — разработка мобильных приложений для Android. Вступительные экзамены проходят каждый год весной, до этого в течение года необходимо заполнить заявку. Занятия начинаются в сентябре. Продолжительность обучения в школе - 1 год. За это время ученики проходят 5 учебных модулей: основы программирования на Java, объектно-ориентированное программирование, алгоритмы и структуры данных, основы программирования Android приложений, основы разработки серверной части мобильных приложений. Выпускники, успешно окончившие обучение, получают сертификат от компании Samsung, который дает дополнительные баллы при поступлении в ВУЗы-партнеры.

Занятия проходят 2 раза в неделю по 2 академических часа. Площадки расположены возле станций Преображенская площадь и Римская, а также в корпусах РУДН на Шаболовке и в Беляево. Подробности

12 сентября 2017 в 14:40

Опыт обучения программированию детей от 8 лет онлайн

  • Учебный процесс в IT

Почему мы перешли на онлайн-занятия

Раньше у нас был обычный компьютерный класс, дети со всего города приезжали. Когда мы работали в таком формате выявили много того, что нам не совсем нравилось.

1) Когда в одной комнате собирается даже 5-6 учеников, очень сложно поддерживать качество обучения на высоком уровне. Дети часто отвлекаются, мешают друг другу, балуются. Преподавателю приходится тратить очень много времени, чтобы успокоить и настроить учеников на работу. Это совсем не эффективно.

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

3) Достаточно часто возникали проблемы с компьютерами. То дети воду разольют на клавиатуру, то удалят что-нибудь, сломают, ноутбуки тормозят и т.д. Сразу же начинается шум: «Ааа, у меня комп сломался!» И учитель превращается в системного администратора. Отнимает много времени и нервов.

4) Если вы думаете, что такие очные занятия учат работать детей в команде, то это не так. В силу того, что у детей разный уровень, один из команды будет делать, а остальные ковырять в носу. Программирование – интровертный процесс, нужно погрузиться в проблему, чтобы решить задачу. Развивать soft skills и программировать одновременно невозможно. Это разные виды деятельности, и развивать их нужно по отдельности. Можно учить ребят делить большой проект между собой, чтобы потом они могли части своего кода сгруппировать вместе. Но работают они над своим куском отдельно.

5) Родителям нужно привозить и забирать ребенка. И во время занятия тоже не понятно куда себя деть, не всегда успеешь съездить по делам. Многие родители сидели у нас в коридоре 2 часа, ждали пока закончится занятие.

Один из знакомых родителей, чей сын ходил в одну крупную IT-школу рассказал нам такую историю:

«Моему сыну 9 лет, он сейчас пошел в 3-й класс гимназии и параллельно занимается на IT-курсах для детей. Впечатления сложные, скорее, негативные. Там слабо следят за тем, что делают дети за компьютерами. Пока учитель читает лекцию, некоторые ребята умудряются переписать на компьютер с принесенной флэшки Counter-Strike и подначивать соседей по классу поиграть с ними. Ребенку не хватает нормального общения со сверстниками, т.к. нужно завязывать новые отношения. Он тянется к ребятам, прогибается под них и не всегда, к сожалению, ищет общения с примерными одноклассниками. Так и там получилось. Например, один раз его сосед открыл во время лекции на своем компьютере google images и стал искать там фотографии, простите, говна. А мой сын громко смеялся над этими фотографиями, за что его в конце концов и наказали двойкой, настоящего зачинщика при этом не обнаружив. Кроме того, в отличие от гимназии, где ребята в основном хорошие и круг общения в основном складывается из сверстников, на курсах контингент очень разнообразный, и по возрасту, и по воспитанию. В результате общения с разными ребятами у сына на телефоне появляются такие приложения, за которые должно быть стыдно, и которые приходится вычищать, объясняя, почему это гадость. Мы обращались в учебный отдел, нам ответили, мол, учитель физически не может ни видеть, что на каждом экране, ни блокировать компьютеры. Ещё один момент был: если сын что-то где-то не успевал, он стеснялся сразу уточнить задание или попросить помощи у учителя, а потом было уже слишком поздно. Ему явно больше подойдет индивидуальное обучение».

Переход на онлайн

Все эти проблемы крутились в голове. А однажды к нам подошел папа одной из учениц и спросил: «А вы проводите занятия по скайпу? Ребенок уезжает к бабушке в деревню: свежий воздух все дела, но нагрузки на мозги никакой».

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

Какие плюсы мы выявили:

  • Преподаватель выдает индивидуальное задание, подбирая по желанию и способностям. Ребенок занимается в своем темпе, ни на кого не отвлекается.
  • Все занятие преподаватель видит экран ученика, может сразу же ему подсказать, помочь.
  • Никаких проблем с дисциплиной. Ребенок чувствует, что за ним все время наблюдают, поэтому стесняется даже лишний раз переключиться на «левую» вкладку в браузере.
  • Ребенок может петь себе под нос, бубнить, рассуждать, и никто не будет смеяться или «затыкать» его.
  • Ребенку не надо стесняться. Он может легко спросить обо всем. Может попросить дать задание посложнее или легче, или на другую тему. Сам выбирать чем заниматься именно сегодня.
  • Родителям не нужно никуда ездить, посадил дома за компьютером и все. Если хочешь, можешь посидеть рядом и понаблюдать, как проходит занятие.
  • Можно заниматься из любой точки мира и не прерывать занятия: на отдыхе с родителями, переехали в другую страну, у бабушки на даче. В общем, везде, где есть интернет.
  • Или наоборот, можно закончить и возобновить занятия в любой момент. Ведь ребенок занимается по своей программе, и ему не придется ничего «нагонять».
Конечно же, не все дети смогут учиться в таком формате. Тут не побалдеешь. Нужно 2 часа работать. Но более спокойные, усидчивые ребята – в восторге. Они радуются, когда создают свои игры и программы.

Онлайн занятия ведем больше года, учится уже больше 100 учеников по всему миру.
Мы учим ребят программировать на Scratch, Python и JavaScript. Плюс есть занятия по Photoshop, 3D-моделированию и информационной безопасности.

Иногда прямо сами завидуем, что у нас в детстве такого не было. Например, у нас есть ученик мальчик Эрол, уже в 12 лет копается в клиент-серверных приложениях, сокетах. Хотя начинал со Scratch, потом перешел быстро на Python. Если бы он занимался в классе, то не достиг и не попробовал бы и половины из этого. А так тренер видит и чувствует, что Эрол быстро схватывает, очень усердный, ему самому нравится копаться, и дает все сложнее и сложнее задания.

Если сейчас формат онлайн-занятий еще для многих в новинку, то через лет 5, я уверена, это будет нормой.

Те из вас, кто следит за моей страницей , наверняка заметили, что в последнее время я занимался обучением детей программированию. Удивительно как мысли материализуются. После посещения , у меня в голове крутилась мысль попробовать себя в роли наставника в мир компьютерного программирования для детей. И к счастью, такая возможность появилась очень быстро. Меня пригласили в качестве преподавателя в детский лагерь, в программе которого был урок программирования два раза в неделю для двух разных групп. Первая группа состояла из деток постарше (от 8 до 12 лет), во второй преимущественно были дети в возрасте от 6 до 8 лет.

Дело в том, что будучи в США, мне посчастливилось приобрести книгу под названием Teach Your Kids To Code с хорошей скидкой. В ней все примеры приводятся в игровой форме с использованием языка программирования . Возможно в будущем я посвящу ей отдельный пост, а сейчас вернёмся к теме моего опыта преподавания. Так вот, изначально мне казалось разумным строить образовательный процесс, черпая информацию из этой книги, но позже я понял как глубоко ошибался:-) Почему? К слову, книга предназначена для детей в возрасте от 9+.

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

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

В-третьих , навык сносно печатать на клавиатуре отсутствовал у всех. О каком наборе программного кода могла идти речь?

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

Визуальное программирование

Немного поразмыслив, я пришел к выводу, что Python однозначно отпадает:-) С ним обучение в таких условиях превратилось бы в кошмарный сон. Решение проблемы не заставило себя долго ждать, на помощь пришло визуальное программирование . Суть заключается в том, что программист не пишет код, он составляет программу путём манипулирования графическими элементами в подходящей для этого среде (IDE). Мне вспоминается мой первый опыт программирования в Borland Delphi и Borland C++ Builder, где можно было создать сложный графический интерфейс не написав ни единой строчки кода. Но специально для детей группой ученых в MIT был придуман инструмент под названием Scratch . Его задача - научить ребенка алгоритмическому мышлению в игровой форме. И стоит отметить, задачу он свою делает на отлично! Вокруг Скретч есть целое сообщество, состоящее из ученых, учителей, родителей и собственно учеников. Инструмент поставляется в двух видах:

  • Как отдельное приложение. Устанавливается на компьютер под управлением ОС Windows/MacOS/Linux (Scratch 2.0 Offline)
  • Веб-приложение, доступное прямо на официальном сайте

Большим плюсом последнего варианта является возможно зарегистрировать свой профайл на сайте и начать делиться своими scratch-проектами с другими участниками сообщества scratch-программистов. Результаты работ последних уже сейчас можно .

Примечательно, что процесс программирования на Scratch увлекателен не только для ребенка. Я сам бывало подолгу "залипал", готовя новый материал для детей.

Scratch: уроки

Вернёмся к теме моего преподавания. Как же были построены занятия?

На официальном сайте Скретч есть хороший раздел о помощи. В нём можно найти пошаговое руководство пользователя на базе которого реально провести первый вводный урок. Умные ребята из Гарвардской Высшей школы образования написали книгу под названием Creative computing (Креативное программирование ), она поможет выстроить полноценный учебный процесс, так как в ней собраны лучшие практики обучения детей программированию. В сети есть русский перевод.

В составлении материала для работы неплохо может помочь и любимый YouTube. Вот ссылка на один из самых качественных туториалов по Scratch, между прочим от автора книги Automate the Boring Stuff with Python .

Выводы

В процессе преподавания я вывел для себя ряд условий, способствующих благоприятному процессу обучения детей программированию.

  • Желательно сократить целевую группу учеников. Лучше всего группа из 4-6 человек. Почему? Читайте ниже.
  • Продолжительность урока не должна превышать 1 часа (в идеале как в школе, 45 минут). Дольше этого времени удержать внимание ребенка будет очень сложно.
  • Ребенку постоянно должно быть интересно. Это одно из самых сложных условий. Если дети теряют интерес, они начинают заниматься посторонними делами: открывать другие приложения, ходить по классу, отвлекать детей, жаловаться на то, что голодны:-)
  • Все дети разные. Одни проявляют смекалку и усваивают материал очень быстро, другие подолгу могут "зависать" над простейшими задачами. Всегда имейте в запасе бонусы для смышлёных детей (дополнительные задания, хитрые условия и т.д.).
  • Хвалите детей за их работу , даже если она незначительна. Для ребенка это очень важно!
  • Поощряйте детей . Я советую в качестве поощрения использовать наклейки, маленькие игрушки или что-то в этом роде. Мотивировать едой, конфетами или печеньем НЕ нужно , никогда не знаешь на что может быть аллергия у ребенка.
  • Просите детей о помощи . Если в классе есть детки, опережающие нормальный процесс обучения, попросите их стать вашими помощниками. Пусть они вместе с вами начнут помогать отстающим. Поверьте, детям это очень нравится.

Минусы Scratch

Scratch не учит реальному программированию . Задача этого инструмента заключается в том, чтобы развить навыки алгоритмического мышления в подходящей для детей форме - играючи. К слову, не только детям этот навык пригодится в жизни:-) Если ваша цель это привить ребенку реальные навыки программирования, постарайтесь как можно раньше осуществить переход от визуального программирования в непосредственный процесс кодирования с использованием одного из реальных языков программирования. Например,

Хотим мы этого или нет, но обучение все больше становится похожим на игру. Особенно если речь идет о детях младшего школьного или дошкольного возраста. Преподаватель Британской высшей школы дизайна Дмитрий Карпов составил список полезных ресурсов для обучения информатике с раннего возраста.

Для тех, кто готовится к главному школьному экзамену

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

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

Новую область знания - computer science (науку прикладного программирования и проектирования) - стоит начинать изучать в раннем возрасте, с 4-6 лет

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

Code.org - приятный интерфейс и масса простых игр о базовых принципах работы языков программирования. Очень нужный некоммерческий образовательный проект для детей.

Crayon Physics Deluxe - игра просто шедевр, развивает у ребенка инженерное мышление, готовит к пониманию программирования в условиях различных систем и физических движков. Даже не столько про программирование, сколько про логику решения задач через итеративный процесс, что является важнейшей воспитательной дисциплиной.

Lightbot - игра на старике Flash, но с приятной графикой и простым обучающим материалом по построению алгоритмов движения робота. Развивает у школьника внимание к сценарию и понимание пошагового поведения персонажа.

CodeCombat - ветеран на рынке, занимается игровым обучением кодам Python, JavaScript, Lua и экзотическому CoffeScript.

CodeMonkey - изучение принципов синтаксиса через игру с обезьянкой.

Ceebot - управление персонажами, используя команды C++.

Cargo-Bot - простое приложение для дошкольников и их айпэдов.

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

Scratch - классика развития мышления будущего программиста.

Kodu Game Lab - большой учебный проект от команды Microsoft Research. Версия для PC бесплатная, а за версию на Xbox придется отдать около $5. Прелесть в притягательности для ребенка мира проектирования игры, его модульности, мышления категориями создания виртуальных миров. Возможно, менее полезна для кодинга и программирования, но лучше помогает изучать основы дизайна игровых приложений.

Hopscotch - обязательное приложение на iPad. Приятный дизайн и базовое изучение основных понятий кодинга.

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

RoboZZle - приложение для составления алгоритма движения стрелки. Обучает ребенка пониманию теории алгоритмов на практике.

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

Естественно, это лишь малая часть всего. Но именно с этих приложений можно знакомство с миром программирования.