
Визуально-блочные среды программирования – отличные инструменты для погружения детей в основы и базовые принципы написания кода. Особенность на примере знакомого многим Scratch – использование блоков, с помощью которых можно создавать простые визуальные программы. Направление подойдет даже дошкольникам и младшим школьникам, о чем мы и хотим рассказать на примере ряда развивающих сред и образовательных инструментов в виде условных конструкторов.
Мы в школе Pixel часто используем блочные языки программирования на курсах и считаем, что это отличный инструмент для обучения маленьких детей. Сразу отметим, что это вряд ли сделает конкретного ребенка программистом, но точно заложит основы дальнейшей учебы. Дело в том, что тот же Скретч:
Улучшает мышление, развивает понимание логики;
Знакомит с рядом базовых принципов программирования;
Учит понимать алгоритмы;
Формирует внимательность и т. д.
Но сегодня хотим поговорить не о плюсах обучения, в каком бы формате оно ни разворачивалось, а о средах, которые можно использовать для погружения в основы блочного кодирования (термин имеет место, но не считаем удачным, поэтому далее будем употреблять только слово «программирование»). Если хочется узнать, привлечет ли ребенка написание кода и сможет ли он двигаться в соответствующем направлении, начать рекомендуем именно с представленных вариантов.
Особо отметим, что только реальная заинтересованность дошкольника или школьника в работе с визуальными средами – гарантия успеха. Стремиться к тому, чтобы навязывать обучение, не стоит, какого бы направления ни касалось дело.

11 полезных сред и программ, где можно начать изучать блочный кодинг
Чтобы сделать погружение в основы кодинга и первые соответствующие шаги наименее сложными, стоит задуматься об уроках блочного программирования для детей. Самостоятельные занятия или курсы – не играет роли: мы косвенно отметили преимущества, справедливые для обоих случаев.
Давайте перейдем к основной части и рассмотрим небольшую подборку сред, программ и приложений, где на основах в виде визуализации и наглядных конструкций можно начать делать первые шаги на пути к полноценному программированию.
Рекомендовать возрастные рамки будем только с оглядкой на собственный опыт. Среды, которые нами не используются, рассмотрены без указания на соответствующие критерии.
1. Scratch Junior

Считаем, что данный вариант подойдет ребятам 5–7 лет, даже если пока не развиты навыки чтения и письма. Почему? Потому что в основу Scratch Jr заложено использование наглядных блоков. С их помощью маленький пользователь может создавать простые программы, управлять различными персонажами и даже рисовать.
Плюсы среды:
Простота интерфейса. В нем разберется даже дошкольник. Это не голословные утверждения, а факт, подтвержденный практикой наших преподавателей;
Возможность увидеть результат почти мгновенно. Это вовлекает в процесс, увлекает и позволяет быстро развить интерес к теме;
Разнообразие создаваемых проектов. Можно сделать игру из нескольких уровней и анимацию. В библиотеке уже есть все необходимые спрайты и фоны.
Доступность. Блоки команд обозначены не текстом, а картинками и символами. Текст используется в основном только при передаче сообщений.
Наличие различных версий. Мы привели ссылку на веб-ресурс Scratch Jr, но программу можно скачать на ПК и мобильные устройства.
Вот плейлист, который поможет сориентироваться и разобраться в основах. В нем представлены простые и понятные видеоуроки Scratch Jr для детей.
2. Scratch

Скретч считается старшим братом первой рассмотренной среды. Как и в случае с версией Jr, начинать можно относительно рано: в 6–9 лет. Подробно описывать данный вариант не будем: функции, возможности и преимущества Scratch аналогичны тому, что было представлено в первом пункте.
Однако хотим отметить один важный момент: знакомство со Скретчем можно и нужно рассматривать как новый этап и логичное продолжение погружения в основы кодинга. Удастся закрепить и отточить полученные навыки на примере создания:
Интерактивных историй;
Игр;
Мультфильмов.
В программе есть большая внутренняя библиотека спрайтов, фонов, звуков и др. Однако пользователи также могут загружать свои изображения, записывать звуки, рисовать элементы в простом графическом редакторе. Это сильно расширяет возможности: можно создать проект, используя картинки любимых персонажей из игр или фильмов.
На официальном сайте можно посмотреть примеры реализованных проектов, чтобы понять потенциал инструмента. Еще их можно найти в плейлисте с пошаговыми инструкциями, которые можно считать уроками для самообучения.
3. Blockly

Блокли – еще один полезный инструмент для начинающих детей. Среда рассматривается как библиотека, предназначенная для реализации проектов путем визуального программирования. Примечательно, что Blockly разработана специально для новичков. Но интереснее особенности варианта. Это:
Наличие встроенного графического редактора. С его помощью начинающий пользователь может составлять блочные программы и редактировать их;
Основа в виде конструктора, как и в случае со Scratch. Достаточно соединять блоки, чтобы получать результаты и решать простые задачи.
На сайте собраны простые образовательные игры с инструкциями: нужно собрать программу из блоков, чтобы помочь персонажам выполнить действия.
4. Kodu Game Lab

Коду – визуальная среда, предназначенная для создания простых 3Д-игр. Справиться с ней способны дошкольники от 5–6 лет.
Особенности:
Графический интерфейс, отсутствие текстового кода. Для программирования игровой логики, персонажей, объектов и виртуальных миров достаточно использовать блочные конструкции;
Простота использования. Разработчик позаботился о том, чтобы решение было доступным для широкой аудитории, в том числе для детей;
Интерактивность. Она выражается в том, что маленький пользователь постепенно погружается в теорию через создание собственных игр. Принцип геймификации как метод обучения – это плюс, что подтверждает опыт наших преподавателей.
Рекомендуем подборку видеоуроков для новичков: она поможет лучше разобраться в Коду.
5. Minecraft и Code Builder
Майнкрафт – популярная игровая вселенная, которая распространена в среде современных детей и подростков. Если говорить об образовательном потенциале, то стоит отметить, что чаще всего для достижения соответствующих целей в связке с данной игрой используется язык Python: с его помощью можно создавать моды для Minecraft. Он относительно сложный, но знакомиться с «Питоном» можно даже в 9–10 лет при условии, что есть понимание основ. Плюсом станет знание того же Скретча.

А мы хотим отметить Code Builder – функцию Minecraft Education Edition: благодаря ей можно создавать различные дополнения посредством кода и играть в них прямо в Майнкрафте. Особенности этой функции следующие:
Возможность написания программ и их внутриигрового выполнения без дополнительного софта;
Наличие главного действующего персонажа – металлического голема, которым можно управлять путем программирования. Это увлекает детей;
Библиотека внутренних скриптов. Их можно использовать как шаблоны для самостоятельного кодинга.
6. TinkerCAD
Это бесплатное приложение, предназначенное для 3Д-проектирования, работы с электронными компонентами и схемами, а также для программирования. Среда комплексная, поэтому рассмотрим ее условное устройство в виде трех самостоятельных направлений:
Трехмерное проектирование. В TinkerCAD оно напоминает 3Д-моделирование, как, скажем, в Blender.
Схемотехника. Если хочется научить ребенка разбираться в основах электроники, данное направление подойдет.
Визуально-блочное программирование. Заниматься им можно онлайн прямо в веб-приложении.
Рекомендуем начинать освоение программы в 6–9 лет. А потому как реализованные принципы блочного кодинга напоминают те же Скретчи обеих версий, данный диапазон считаем подходящим и для погружения детей в программирование с помощью TinkerCAD.

7. Lego WeDo 2.0 и Mindstorms
Lego WeDo 2.0 – платное решение, основанное на сочетании робототехники и написания кода. Конструктор рассматривается в качестве универсального образовательного инструмента для школьного и домашнего обучения.
Mindstorms – почти аналогичное решение. Типичный набор представлен:
Стандартными деталями Lego;
Дополнительными средствами в виде осей, колес, сервомоторов;
Сенсорами, двигателями;
Программируемым блоком.

Начинать использовать WeDo 2.0 можно даже в дошкольном возрасте. Mindstorms — вариант для детей постарше, от 10 лет.
Робототехника помогает детям лучше визуализировать, как работает созданный код: можно собрать программу и увидеть движение робота. Также здесь задействуется мелкая моторика рук и пространственное мышление. Однако этот вариант наиболее дорогостоящий.
8. Snap4Arduino

Это IDE для модульного программирования контроллеров Ардуино, оформленная подобно Скретчу. Но могут возникнуть сложности из-за наличия только англоязычной онлайн-версии. Если же есть опыт, то среда поможет разобраться в относительно сложной кодировке, а также в:
Итерационных и композиционных вычислениях;
Работе со списками, координатами, базами данных и т. д.
Вариант подойдет скорее детям постарше, подросткам, хотя он и позиционируется иначе, но в интернете есть множество полезной информации по теме. При желании с ее использованием можно помочь ребенку разобраться в основах.
9. MakeBlock

mBlock – площадка, позиционируемая как платформа для постепенного движения от блочного программирования онлайн к написанию кода на «Питоне». Основы идентичны Scratch, при этом упор сделан на кодинг микроконтроллеров. При желании в онлайн-редакторе можно выбрать режимы работы с фонами и персонажами, что упрощает процесс вовлечения ребенка в написание кода.
Если говорить масштабно, то mBlock – это комплексное решение и куда более сложное, чем Скретч. Данный факт обусловлен:
Расширенным набором инструментов;
Наличием возможности писать код на Python;
Режимом работы с контроллерами на основе Arduino.
10. App Inventor

Это среда визуальной разработки приложений для устройств с операционной системой Android. Как и ряд других представленных решений, данный вариант похож на Скретч.
Особенности:
Написание кода реализовано через визуальный язык;
Предусмотрена возможность конвертации скриптов в байтовый Android-код;
Косвенная связь с отмеченным инструментом Blockly. Первые версии App Inventor стали прообразами последнего.
На официальном сайте есть туториалы для новичков, можно как создавать новые приложения, так и делать ремиксы существующих.
11. Snap!

Snap! – бесплатный сервис, предназначенный для обучения программированию. Его можно использовать в браузере без скачивания и установки. Это плюс с точки зрения доступности.
Принято полагать, что Snap! – нечто вроде игры с блочным программированием, но это не совсем так: соответствующая среда, ранее называвшаяся Build Your Own Blocks, является в первую очередь образовательной. Да, она позволяет программировать и создавать игровые проекты, анимацию и не только, но справедливее говорить о языке, а не о развлекательном приложении.
Дополнительная особенность – все та же приближенность к Скретчу.
***
Хотим подвести итог: сегодняшняя подборка сред и языков подошла к концу. Надеемся, что вы смогли подобрать что-то для своего ребенка и разобраться в предложенных видеоуроках.
В завершение хотим задать вопрос: учите ли вы своих детей писать код и если да, то какие средства используете? Когда начинали и с какими трудностями сталкивались чаще всего?
Материал подготовлен преподавателями школы Pixel. У нас маленькие айтишники делают первые уверенные шаги в направлении информационных технологий. Мы обучаем Scratch JR, Scratch, Kodu Game Lab, TinkerCAD и другим направлениям визуального программирования.