Программа для программирования для детей
Уже с 5 лет дети могут учиться программировать и создавать крутые игры. Расскажем об основных программах, которые в этом помогут.
Сегодня маленькие «цифровые аборигены» рано берут в руки гаджеты и осваивают компьютерные игры. Это увлечение можно сразу развить и превратить во что-нибудь полезное: почему бы ребенку самому не начать создавать игры?
Конечно, программы для детей гораздо более упрощённые, но, главное, что дети сразу видят результат своих стараний, понимают, как строится скелет игр, учатся решать комплексные задачи и думать как программисты.
Мы рассмотрим как платформы для дошкольников (визуальные среды), так и для подростков (здесь уже понадобится текстовое программирование). Почти все программы либо имеют яркую визуализацию, либо связаны с популярными у детей игровыми площадками (Minecraft, Roblox). Игровой формат, знакомая среда вовлекают детей, мотивируют и помогают концентрировать внимание, что очень важно для обучения.
Здесь мы говорим о визуальном программировании и рассматриваем бестекстовые среды программирования: детям не нужно уметь читать, чтобы начать делать в них свои проекты.
Scratch Junior (Скретч Джуниор) — это визуальная среда, младший брат популярной среды программирования Scratch. Он предназначен для совсем маленьких детей (от 5 лет).
Изначально Scratch Jr появилось как приложение на планшет с главным персонажем котиком (работает на iPad, Android и на читалках Kindle), а затем была создана версия для ПК с героем-инопланетянином по имени Тик.
Устроена программа довольно просто: посередине игровая сцена, снизу категории блоков и область программирования. Слева можно выбрать спрайта (то есть героя или объект), для которого будет создаваться программа. Справа можно добавить нового спрайта или переключиться между сценами.
Scratch Jr — это цифровой конструктор наподобие Lego, где ребёнок должен перетаскивать блоки и соединять их вместе в нужном порядке. Процесс несложный: блоки «примагничиваются» друг к другу.
Всего есть несколько категорий: блоки движения, внешнего вида, управления и, наконец, пусковые блоки и блоки окончания. Блоки обозначены картинками, поэтому детям легко разобраться, за что они отвечают.
Библиотека спрайтов и коллекция ландшафтов довольно большие.
Добавлять свои картинки для спрайтов не получится, но в программу встроен Paint-редактор, где можно нарисовать своего персонажа или пейзаж.
Ребята не только создают простые линейные программы, но и узнают, что такое циклы и подпрограммы. Даже самый простой проект на Scratch Jr может состоять из параллельных программ: можно создать «коды» для нескольких спрайтов и запустить их одновременно. Так как сцен может быть несколько, есть возможность создать несколько уровней игры.
Эта визуальная среда, разработанная компанией Microsoft, предназначена для создания несложных 3D-игр.
Здесь можно создавать трехмерные игровые миры и менять их. Инструментов довольно много: можно изменить форму, цвет и материал рельефа, создать подводный мир или лабиринт, добавить небо, изменить освещение и силу ветра и др.
В игровой мир мы можем добавлять спрайты и программировать их движения. Из минусов — нельзя загружать собственные картинки, но есть внутриигровая библиотека спрайтов.
Для программирования нужно манипулировать графическими блоками, как и в Scratch Jr. Чтобы создать программу, необходимо нажать на правую кнопку мыши и выбрать пункт «Программа». Область программирования появится на переднем плане.
Есть две основные категории блоков для программы: «когда» и «делать». И в каждой из них множество подкатегорий, детализирующих действие. Пример создания программы для шутера: когда клавиша W нажата, персонаж стреляет на север красными пульками.
В этой программе ребята уже создают полноценные 3D-миры, добавляют в игры таймер, подсчёт очков и жизней, уровни и многое другое.
А еще они изучают циклы и условия, развивают алгоритмическое и пространственное мышление. Они уже могут придумывать свои идеи и искать пути их воплощения, анализировать задачу и структурировать её решение.
О Скретче вы наверняка уже что-то слышали. Это визуальная среда и одноимённый визуальный язык программирования, разработанные медиалабораторией Массачусетского технологического университета. Со Скретча начинают программировать не только дети, но и взрослые: он даже включён в знаменитый гарвардский курс CS50, который знакомит студентов с программированием.
В отличие от всех остальных программ, Scratch доступен онлайн и даже не требует регистрации. Аккаунт стоит завести, чтобы сохранять свои игры и публиковать их на сайте, получать лайки и комментарии от других пользователей.
Скретч — это всё та же визуальная среда, здесь тоже вместо текстового программирования нужно соединять между собой блоки. Но в Скретче уже появляются переменные, ветвления, более сложные функции и циклы и др.
Интерфейс простой: посередине экрана находится среда программирования, слева блоки, справа — сцена, на которой происходят изменения. Под сценой область, где можно выбрать, для какого спрайта создается программа, его размер и координаты (по осям Х и Y).
Категорий блоков много: движения, внешний вид, события, управление, сенсоры, операторы, переменные. Когда Скретчер (так называют опытных создателей игр в Скретч) сделает несколько игр и начнёт хорошо разбираться в программе, он сможет создать облачные переменные (чтобы играть онлайн вместе с друзьями) и свои, совершенно новые блоки.
Изучение лучше всего начать с категорий движения и внешнего вида спрайтов — так будет проще и удобнее, ведь спрайты — это основное в ваших играх на Скретч. После изучите циклы и условия, разберитесь, как сделать клонов в игре и задать переменные. После простых мини-проектов можно взяться за создание полноценного шутера, раннера или гонок.
Помимо встроенной библиотеки спрайтов и звуков, в Скретче можно добавлять свои собственные материалы. А также есть Paint-редактор, где можно нарисовать спрайта, и аудиоредактор, где пользователь записывает своё аудио.
Такое большое количество инструментов позволяет создать в Скретче практически любую игру.
Чтобы потренироваться и получше изучить возможности Скретч, дети могут воссоздать свои любимые игры. Например, сделать копию Among Us, Brawl Stars или Friday Night Funkin.
Еще интересно, что Скретч — это открытая площадка, где все могут обмениваться идеями, брать работы других пользователей и модифицировать их. Если проект «публичный», то можно воспользоваться его кодом и сделать свой ремикс.
В Скретч дети могут поближе познакомиться с логикой программирования и сразу создавать свои игры и анимацию. Работая над своими проектами, ребята развивают креативное и алгоритмическое мышление, учатся воплощать комплексные задачи. Набор инструментов достаточно широкий, чтобы воплотить практически любую задумку ребенка: нужно только проанализировать задачу и постараться найти решение.
Вы наверняка знакомы с Майнкрафт или хотя бы слышали о нём. Это игра, в которой из блоков можно создать что угодно, на что хватит фантазии. А что если все эти блоки и сооружения создавать с помощью текстового кода? Это возможно, если подключить к Майнкрафту язык программирования Python.
Это хорошая возможность научить детей программировать в знакомой и любимой среде. Как это работает? Мы скачиваем игру Майнкрафт и среду для разработки Python, а также Java, интегрируем всё вместе. Включаем сервер на компьютере, пишем код и запускаем его в игре.
К Майнкрафт также можно подключить другие языки. Например, Lua, о котором будем говорить чуть ниже в разделе о Roblox. Но Python — самый лучший выбор, так как он не только простой и интуитивно понятный для детей, но в то же время это активно развивающийся и востребованный язык, который пригодится ребятам в будущем.
С помощью текстового кода дети могут создавать блоки, строить стены, дома и целые улицы, выводить координаты персонажа в чат, создавать двухмерные и трёхмерные фигуры, сферу и др.
Код на Python для создания куба из динамита
Трёхмерный куб из 125 блоков динамита
А ещё в Майнкрафт можно познакомиться с концептом искусственного интеллекта и применением случайных чисел. Например, задать настроение персонажу-боту: он будет обижаться, когда мы отдаляемся от него, и прощать нас, когда приближаемся к нему.
Код, который мы запускаем, чтобы персонаж-бот мог на нас обидеться и затем простить
В первую очередь в Майнкрафт мы изучаем программирование, но также классно внутри этой песочницы делать свои игры. Например, лабиринт, игру с препятствиями (с появлением и исчезновением блоков и другими условиями) и др.
Создание игр в Minecraft — это, конечно, не то же, что создавать игры в программах по разработке игр. Здесь мы больше фокусируемся на программировании: осваиваем Python и учимся писать код на очень популярном языке (знание Python точно пригодится детям в будущем, какую профессию они бы не выбрали), ищем баги и исправляем их, как настоящие программисты.
Но, во-первых, Minecraft — это популярная у детей игра, а значит это хороший способ привить детям любовь к программированию и разработке игр. А во-вторых, создание игр в Майнкрафт раздвигает рамки и развивает воображение: дети понимают, что нет ничего невозможного (можно программировать в любимой игре!) и экспериментируют, создавая оригинальные, ни на что не похожие проекты.
Если в Minecraft дети больше учатся Python-программированию, то в Roblox они смогут почувствовать себя настоящими разработчиками игр. Это тоже знакомая для них среда: здесь ребята играют в популярные игры Adopt Me, Piggy, Murder Mystery 2 и многие другие.
На движке Roblox Studio дети могут создавать свои собственные трёхмерные игровые миры и программировать на языке Lua. Это упрощённый язык, предназначенный для пользователей, не являющихся профессиональными программистами.
У Roblox Studio непростой интерфейс, поскольку набор функций и вкладок велик. Сложность ещё и в том, что названия в программе даны на английском языке, а к этому ещё нужно привыкнуть. Когда вы только начинаете работу над проектом, перед вами открывается библиотека шаблонов: можно создавать игру на обычной равнине (Flat Terrain) или, например, в замке (Castle) или в деревне (Village). Выбор шаблона также может определять жанр игры: например, есть ландшафт для гонок или для игры Obby (игра с препятствиями).
Далее вы переходите в рабочее пространство. Посередине экрана находится сцена, а вокруг — разные вкладки, которые можно открывать и скрывать. Наверху в разделе Home вы найдёте инструменты, которые позволяют работать с объектами на сцене: создавать, двигать (Move), вращать (Rotate), изменять их размер (Scale).
Справа расположен Explorer, где находятся инструменты для настройки уровней. Самый важный из них — Workspace, куда попадают все объекты, добавленные на игровую сцену. Если нажать на объект, то под Explorer заполнится окно Properties, где можно изменить свойства объекта (например, размер или цвет).
Слева находится Toolbox — коллекция моделей, созданных разработчиками Roblox и обычными пользователями. Их можно добавлять в игровой мир. Слева же должна быть вкладка Editor (чтобы открыть её, нажмите на название Editor в верхней панели), где находятся инструменты для изменения ландшафта.
Если вы потеряли какую-либо вкладку, просто нажмите в верхнем меню на View, там можно будет выбрать любое нужное окно (такой вопрос у начинающих ребят возникает часто).
Чтобы передвигаться по игровому миру (движение камеры), нужно нажимать на клавиши W, A, S, D и зажимать правую кнопку мыши.
Создаем симулятор копателя в Roblox Studio (ночной режим)
Область программирования открывается через Explorer. Нужно нажать на плюсик рядом с Workspace (или там же рядом с объектом, для которого нужно создать код) и добавить скрипт.
Пишем код на языке Lua для симулятора копателя
Также в Roblox Studio можно подключить плагины, которые расширяют набор инструментов. Они позволяют быстрее изменять цвет, создавать окружности, разрезать блоки на тонкие пластины и др.
В Roblox можно создавать игры самых разных жанров: Obby, шутер, гонки, симуляторы (например, симулятор копателя), раннеры и многое другое.
Игры публикуются на сайте Roblox, там же можно играть в них вместе с друзьями, комментировать и ставить лайки, получать фидбек от пользователей. В Roblox также можно получать внутриигровую валюту Robux, например, за продажу мерча или когда в вашу игру играют пользователи с премиум-аккаунтом.
Roblox Studio — это полноценный инструмент, который познакомит детей с разработкой игр. Он приближен к профессиональным движкам, но упрощён и адаптирован так, что дети могут без проблем создавать в этой среде свои игры. А язык программирования Lua доступен для понимания ребенка и станет отличным началом на пути освоения программирования.
Моделирование 3D-миров поможет развить пространственное и алгоритмическое мышление ребенка. Дети смогут познакомиться с тем, как работают профессиональные разработчики игр и, возможно, загорятся в будущем освоить эту специальность.
Чтобы научить ребёнка основам программирования, ему должно быть не просто понятно, но и интересно. Мы собрали 10 увлекательных приложений-игр, которые подойдут для детей всех возрастов.
Программирование для дошкольников
Box Island
Максимально понятная мобильная игра, в которой нужно бродить по острову, преодолевать препятствия и собирать звёзды. Обучение детей основам программирования через последовательности и циклы — это отличное начало. Box Island развивает логическое мышление, распознавание образов и память.
Поддерживается русский язык.
ScratchJr
Скретч известен как лучший вводный язык программирования, а ScratchJr — это адаптированный вариант для детей от 5 лет. С ним можно оживлять персонажей, создавать свои игры и сценарии. Развивает не только алгоритмическое, но и творческое мышление.
Почти всё приложение состоит из картинок, поэтому язык интерфейса значения не имеет.
Ну а если вы переросли Scratch, но тоже хотели бы обучаться программированию в увлекательной форме, держите 20 бесплатных онлайн-игр для программистов.
Lightbot
Ещё одно мобильное приложение, в котором ребёнку предстоит управлять роботом, направлять его и включать свет в нужных точках. Каждый новый этап игры сложнее предыдущего, повторяющихся команд всё больше, вследствие чего появляются своеобразные циклы.
Можно выбрать русский язык.
ПиктоМир
Но обучение детей программированию не ограничивается иностранными приложениями. ПиктоМир от российских разработчиков очень похож на Lightbot, только вместо включения света нужно закрашивать пройденные роботом квадратики.
По умолчанию на русском языке, но также можно переключиться на английский.
SpriteBox
Игра чем-то напоминает старого доброго Марио, но с более яркой картинкой и квестами-головоломками, которые знакомят детей с последовательностями, циклами и базовыми программными операциями.
Все задания на английском языке.
Программирование для школьников
Scratch
Также есть визуальный язык программирования Scratch — для детей от 10 лет и старше. От ScratchJr программа отличается более продвинутым графическим редактором и редактором проектов. Так, Скретч обучает детей не только написанию программ, но и основам дизайна.
Поддерживается русский язык интерфейса.
Minecraft
Программирование с Майнкрафт — лучшее решение для современных детей. Мало того, что ребёнок уже может интересоваться столь популярной игрой, так в ней ещё можно реализовывать задачи в рамках 3D-мира. Кроме наличия головоломок, Minecraft также развивает воображение и позволяет выстраивать причинно-следственные связи.
Примечание В Майнкрафте можно создавать для ребёнка уникальные сценарии и задачи.
В настройках можно выбрать русский язык.
Kodu Game Lab
Программирование для детей, которые интересуются геймдевом, должно начинаться с этого приложения. Kodu — игра от Microsoft для визуального программирования. С ней ребёнок не просто научится программированию и дизайну, но также создаст настоящую 3D-игру, в которую можно поиграть на ПК или Xbox.
Только на английском языке.
Tynker
Это не игра, а целая платформа с обучающими приложениями для разных языков. Наиболее популярны игры для детей по изучению JavaScript, Python, HTML и CSS. Всего Tynker насчитывает около 2000 игр, включая темы по дополненной реальности и робототехнике.
Codecombat
Ещё одна платформа для детей по изучению программирования. Собранные здесь курсы и игры разрабатывались при поддержке педагогов. Платформа позволяет осваивать синтаксис и писать код с соблюдением лучших практик. Поддерживаются следующие языки программирования: JavaScript, Python, Java, CoffeeScript и Lua.
В этой статье мы расскажем родителям, как самостоятельно обучить ребёнка основам программирования. Кстати, описанные ресурсы могут помочь не только детям. Поэтому любителям курсов «Java за 3 дня» тоже не будет лишним прочитать материал.
Прежде чем начать обучение, нужно понять, что объяснить что-то ребёнку часто сложнее, чем взрослому. Как минимум нужно быть усидчивее, терпеливее и сдержаннее. Иначе нервный срыв будет у всех участников учебного процесса. Также почитайте разные статьи об обучении детей программированию, например, интервью с заведующим отделом учебной информатики НИИСИ РАН А.Г. Кушниренко.
Примечание Если вы не планируете научить ребёнка программированию на 1C, то есть смысл отдать его на курсы английского языка, чтобы у него было хотя бы базовое понимание англоязычных терминов и текстов.
Перед началом обучения желательно поставить цель. Подумайте, чего должен достичь ваш ребёнок после освоения того или иного аспекта программирования. Например, если вы хотите научить его пользоваться компьютером на продвинутом уровне, то вероятнее всего, не нужно углубляться в языки вроде C++. Достаточно будет просто освоить Scratch, а также рассказать и показать, как работает Web. Уже на этом уровне ребёнок будет выделяться среди своих сверстников.
Если ваша цель — заинтересовать ребёнка в профессии программиста, то имеет смысл начать разрабатывать учебный план. Для этого можно посмотреть, как преподносится материал на YouTube в видео с большим количеством положительных комментариев. Также стоит обратить внимание на Khan Academy. Там есть множество материалов для детей и взрослых, и вы можете просто перевести их и использовать для обучения своего ребёнка.
Примечание Возможно, было бы рациональнее сначала научить ребёнка строить небольшие алгоритмы, потом обучить базовым понятиям английского, и только затем переходить к программированию.
Инструменты для начала обучения программированию
Scratch
Наиболее популярная среда для обучения как совсем маленьких, так и детей 10+. Программы создаются с помощью блоков с понятными для детей описаниями действий. Детям нравится смотреть на результаты своего труда, здесь они увидят или интересную игру, которую сами сделали, или какую-нибудь анимацию. Ещё существует аналог Scratch для iOS — Hopscrotch. Кроме того, есть версия для совсем малышей и называется она Scratchjr, однако разрабатывается не командой MIT.
Alice
В этой среде для разработки программ, анимаций и видео ребёнок сможет освоить базу объектно-ориентированного программирования. Всё полностью бесплатно и с открытым исходным кодом, так что можете даже внести свой вклад в проект.
StarLogo TNG
Программное обеспечение для моделирования и симуляторов. Позволяет создавать обучающие игры, на основе которых можно объяснять доступным языком функционирование сложных систем.
Более продвинутый вариант Scratch. И выглядит, и работает сложнее, но ребёнок тоже растёт, верно? В Snap реализована возможность создания своих собственных блоков.
Gamefroot
Очередной блоковый редактор кода, позволяющий строить уже более масштабные алгоритмы, чем в Scratch.
Отличный сайт, в том числе с русскоязычным контентом. Он сочетает в себе множество игр с разными уровнями. Игры построены таким образом, что приучают ребёнка искать самый короткий, но при этом выгодный путь для достижения цели. Более того, материал разбит на возрастные группы, что упрощает навигацию.
ПиктоМир
Полностью русскоязычная и российская разработка для обучения детей основам программирования. Отличается от предыдущих ресурсов тем, что программирование строится не путём использования блоков, а с помощью пиктограмм. Кроме того, ресурс, благодаря своей кроссплатформенности, позволяет использовать очень старые версии Android и iOS.
Конструкторы
Arduino
Когда речь заходит о программировании, то нельзя не сказать про Arduino. Такие игрушки подходят как детям, так и взрослым. Кроме того, программирование микросхем может заинтересовать ребенка роботехникой, что, конечно, не хуже, чем Web. А ещё Arduino работает со Scratch.
Raspberry PI
Raspberry PI — небольшой одноплатный компьютер под управлением Linux, который совместим с Arduino. Кроме того, он поддерживает язык программирования Python, что покажет ребёнку, как выглядит программирование у взрослых.
Lego, как Arduino, позволяет программировать свои конструкторы, но не все. Кроме того, Lego не может взаимодействовать ни с Arduino, ни с Raspberry, что уменьшает его шансы на популярность среди детей возраста 6+.
Примечание Чтобы заинтересовать ребенка миром IT еще сильнее, можете предложить ему почитать необычные статьи об устройстве тех или иных технологий. Например, обратите внимание на статью о том, как устроен Интернет под водой.
Заключение
Прежде чем делать из своего ребёнка высококлассного программиста исходя из своих интересов, попробуйте понять его характер и в соответствии с ним уже выбирать то, что больше подойдёт для обучения. Не нужно пытаться реализовать в ребёнке свои мечты, чаще прислушивайтесь к его интересам и желаниям. Если вы хотите больше узнать о психологическом аспекте обучения, то зайдите на Постнауку, а мы же предлагаем ознакомиться с нашими материалами уже взрослым программистам.
Программисты сейчас востребованы почти всюду, поэтому неудивительно, что некоторые родители хотят, чтобы их дети стали разработчиками. Но с чего же начать обучение программированию? Чтобы помочь вам найти ответ на этот вопрос, мы собрали несколько языков программирования и инструментов для самых маленьких.
А еще это вполне себе интересный способ развлечься, если вы уже программист ?
Scratch
Scratch — это бесплатный язык программирования для детей, разработанный лабораторией MIT Lifelong Kindergarten Lab. Язык сопровождается руководствами для начинающих и инструкциями для родителей. MIT даже подготовил карточки для изучения принципов программирования, когда компьютера нет рядом.
Прим. Если сейчас вы поняли, что это развлечение не для вас, а чем-то интересным позаниматься все-таки хочется, вы можете поиграть в какую-нибудь игру для программистов.
Scratch использует блочный интерфейс: для создания программ нужно объединять различные компоненты, например, действия, события и операторы. Форма каждого блока выбрана таким образом, чтобы он был совместим лишь с нужными блоками. Получается что-то наподобие пазла.
Scratch можно использовать для создания анимации и игр, используя предоставленные или загруженные самостоятельно изображения. Дети могут делиться результатами своего творчества в онлайн-сообществе языка программирования.
Поскольку Scratch бесплатен и хорошо поддерживается, это претендент на первое место среди языков программирования для детей. Неудивительно, что его влияние можно заметить во многих других языках, например, в Blockly.
Требования: компьютер на macOS, Windows или Linux
Blockly
Blockly — это взгляд Google на Scratch. Заметным отличием является то, что составленную из блоков программу можно вывести в виде кода на нескольких полноценных языках программирования: JavaScript, Python, PHP, Lua и Dart. Это делает Blockly больше визуальным редактором, нежели языком программирования для детей.
Код появляется в окне справа сразу после соединения блоков. Языки программирования можно менять на лету, чтобы оценить разницу в их синтаксисе. Это делает Blockly идеально подходящим для детей постарше, которым уже не так интересные мультяшные коты Scratch.
Для тех, кто думает, что Blockly выглядит как логичное продолжение Scratch, у нас есть хорошая новость: Google работает с MIT над новой версией Scratch, основанной на платформе Blockly.
К сожалению, поддержка Blockly пока не так хороша, как у Scratch, да и руководств немного, поэтому для изучения этой среды программирования рекомендована помощь родителей.
Оптимальный возраст: 10+
Требования: компьютер на macOS, Windows или Linux
Alice
Alice — это бесплатный инструмент для изучения основ объектно-ориентированных языков наподобие C++. В нём используется уже знакомый блочный подход, позволяющий детям создавать игры и анимированные изображения c помощью 3D-моделей, сцен и движений камеры.
Интерфейс «drag’n’drop» и понятная кнопка «Play» явно смутят ребёнка меньше, чем загромождённый интерфейс Scratch. Программы, или «методы», могут быть конвертированы в Java, что позволит перейти от блочного интерфейса к обычному языку программирования.
Alice создана в университете Карнеги-Мелон, и хотя сайт выглядит не очень, программа не заброшена всё ещё находится в разработке.
Оптимальный возраст: 10+
Требования: компьютер на macOS, Windows или Linux (при установке на Mac нужно разрешить установку приложений из любых источников)
Swift Playgrounds
Swift — это язык программирования для разработки iOS-приложений. Swift Playgrounds — это игра для iPad, разработанная для обучения детей азам программирования на Swift. Игра бесплатна и не требует никаких навыков.
Приложение содержит множество руководств по использования различных команд языка, которые в данном случае используются для перемещения персонажа по имени Байт по трёхмерному миру. Хотя для использования приложения не требуются специальные навыки, детям всё же придётся «покурить мануалы», чтобы решить некоторые задачки.
Оптимальный возраст: 10+
Требования: iPad
Прим. Кстати, недавно мы опубликовали список приложений для изучения программирования на мобильных устройствах, в который входило и это приложение — рекомендуем почитать.
Twine
Для детей, которых больше интересует создание игр и красивых историй, нежели техническая сторона программирования, подойдёт Twine.
Twine — это приложение для создания нелинейных историй, которое используют люди всех возрастов, включая взрослых и преподавателей. Twine учит не программировать, а структурировать и выпускать нелинейные игры и истории.
Истории Twine состоят из текстовых страниц и изображений, как сайты. Интерфейс показывает связанные страницы, в которые можно добавлять текст, ссылки и картинки. Приложение отлично подходит для создания игр, в которых любой выбор игрока ведёт в отдельную ветвь развития событий.
Хотя это приложение и не учит детей программированию, оно даёт им отличные навыки планирования и геймдизайна. У приложения есть отличная вики, много руководств и активное пользовательское сообщество.
Пользоваться Twine можно как онлайн, так и офлайн.
Оптимальный возраст: 12+
Требования: компьютер на macOS, Windows или Linux
LEGO Mindstorm Robotics
Ещё одним подходом к изучению программирования является изучение роботов. Многим детям нравится, когда они могут видеть результат своей программы вживую. Существует много различных программируемых роботов и языков для работы с ними, но лишь система LEGO Mindstorms может похвастаться большим сообществом в этой области и дружелюбным к пользователю приложением. Среду для разработки можно скачать бесплатно, но для запуска программ нужен набор LEGO Mindstorms. Кстати, покупать наборы не обязательно — в некоторых школах и библиотеках они есть в свободном доступе.
Среду разработки LEGO EV3 можно использовать на компьютерах и планшетах. В ней используется блочный интерфейс LEGO Block, но, в отличие от Scratch и Blockly, программа составляется горизонтально. Для управления роботами LEGO Mindstorms пользователи комбинируют различные действия, переменные и события. Язык программирования достаточно просто для детей, но частенько эти наборы приобретают и взрослые — порой соревнования по сборке LEGO-роботов можно увидеть и на различных IT-конференциях.
Кстати, недавно LEGO анонсировала набор Boost, разработанный с целью дать детям возможность управлять моделями. LEGO Boost гораздо проще, чем LEGO Mindstorms, и поэтому более доступен. Упор здесь делается на постройку роботов и развлечение, но энтузиасты смогут изучить основы программирования.
Оптимальный возраст: 10+
Требования: компьютер на macOS или Windows или планшет на Android или iOS
Kodu — это приложение для разработки игр, разработанное Microsoft для Xbox 360. Версия для Windows бесплатна, а для Xbox 360 — стоит $4,99. Дети могут использовать его для исследования и разработки трёхмерных игр.
Графический интерфейс Kodu очень удобен, а в версии для Xbox программировать можно прямо на геймпаде. Так что, если у вас есть подходящее оборудование, Kodu — это старый, но не бесполезный инструмент.
К сожалению, версии для Xbox One нет и не предвидится, но существующие версии полностью завершены.
Оптимальный возраст: 8–14
Требования: компьютер на Windows 7 и ниже или Xbox 360
Варианты для детей постарше
Детям постарше стоит заняться обычными языками программирования наподобие Python, Java или Ruby. Khan Academy, Codecademy и Coursera предлагают бесплатные онлайн-курсы для начинающих программистов. В нашем разделе «Обучение программированию» вы можете найти множество обучающих материалов на русском языке. Также можно попробовать свои силы в создании модов для Minecraft. Minecraft-сообщество очень активно и составило множество руководств. Еще одним вариантом является Unity 3D, предназначенный для разработки игр. Важно помнить, что какой бы способ изучения программирования вы не выбрали, вы обязательно столкнётесь с кучей проблем, которые важно преодолеть, зачастую методом проб и ошибок. Поэтому от родителей в первую очередь требуются терпение и поддержка.
Игры, справочники, мобильные редакторы кода — собрали лучшие приложения по программированию для детей и подростков от 4 до 17 лет.
Самый увлекательный способ изучать программирование — через игры! Так прокачать свои цифровые навыки могут даже дошкольники: игры помогут им развить логику и научат думать как программисты. Чтобы изучать визуальное программирование в 5 лет, не нужно даже уметь читать и писать.
А подростки уже могут взяться за текстовый код и создавать свои проекты. Игры, элементы геймификации и поощрения — все это поможет удержать внимание детей и вовлечь в процесс.
У многих детей нет своего компьютера, только мобильный телефон или планшет. Это мы поняли, когда под нашими видеоуроками на YouTube все чаще стали появляться такие комментарии:
Поэтому мы подготовили подборку мобильных приложений, которые помогут освоить азы программирования. Большая часть приложений бесплатны и доступны на iOS и Android. Начнем с игр для самых маленьких и затем перейдем к приложениям для подростков.
Возраст: 4-8 лет.
Доступно: iOS (бесплатно), Android (бесплатно)
В приложении есть отдельная область программирования, где дети собирают блочный код. В этой версии игры доступно 20 уровней: чем дальше, тем дольше нужно раздумывать над решением задачи. Игра предназначена для детей, но интересна будет даже взрослым.
Есть платное продолжение Lightbot: Programming Puzzles, в котором доступны еще 50 уровней игры. Стоимость: $2.99 или 169 рублей.
Возраст: 4-8 лет
Доступно: iOS (бесплатно), Android (бесплатно)
Эта игра очень похожа на Lightbot: здесь тоже есть робот, которым нужно управлять с помощью блочного кода. Блоки управления называются пиктограммами, из них нужно собрать программу. В этом приложении тоже не нужно читать или писать текст, поэтому оно идеально подойдет дошкольникам и младшим школьникам.
Игра «Пиктомир» была разработана РАН именно для того, чтобы обучить маленьких детей программировать. Есть даже научная статья о том, как ребят в детских садах обучали программированию в этой игре еще в 2010-11 годах.
Возраст: 5-7 лет
Доступно: iOS (бесплатно), Android (бесплатно)
Scratch Jr — это младший брат популярной визуальной среды программирования Scratch. Но в Скретч Джуниор блоки обозначены яркими картинками, а не словами, что упрощает работу детям. Все просто и интуитивно понятно: перед нами сцена, а снизу категории блоков и область программирования. Здесь дети могут создавать свои игры, анимации, небольшие мультфильмы, знакомиться с основными понятиями в программировании: циклами, условными операторами и др.
Приложение доступно на планшетах и электронных книгах Kindle. Подробнее о Scratch Jr и других программах для создания игр мы рассказывали здесь.
Возраст: 5-10 лет
Доступно: iOS (бесплатно доступны 10 уровней, за 90 следующих плата $7.99)
Box Island — одна из самых известных игр для юных программистов, успевшая завоевать большое число наград. В начале игры нам рассказывают небольшую историю: наши персонажи потерпели крушение на воздушном шаре и оказались на необитаемом острове, где их поджидает много опасностей. По ходу игры нам предстоит проходить испытания на острове и получать звезды.
В челленджах дети тренируют логическое мышление, знакомятся с циклами и последовательностями, учатся распознавать образы. Все эти знания пригодятся юным программистам в будущем.
Возраст: 6-11 лет
Доступно: iOS (ограниченная версия бесплатна, полная версия по подписке $95.99 в год, пробный период 7 дней)
Эта игра тоже увлекает сторителлингом, но на этот раз ребенок может выбрать, какая игровая вселенная ему нравится больше. Мы можем оказаться в будущем и летать на дронах, управлять роботами, попасть во вселенную Майнкрафта или программировать вместе с Барби.
В приложении есть интегрированная визуальная среда для программировании. Кирпичики кода похожи на блоки в популярной визуальной среде Scratch. Они так же примагничиваются друг к другу и собираются в длинную ветвь. Детям предстоит составлять код, чтобы помочь персонажам продвинуться дальше в их истории. Ребята начинают с визуального языка, а потом могут перейти к JavaScript, Swift или Python, создавая свои мини-игры и приложения. Пока дети пишут программы в приложении, они применяют критическое мышление, занимаются решением проблем, отладкой и др. Изучают такие концепты, как переменные, функции, повторения и др.
Есть также версия для самых маленьких Tynker Junior.
Еще одна визуальная среда программирования прямо в телефоне! Дети могут добавлять персонажей и программировать их действия с помощью блочного редактора, который адаптирован под мобильное устройство («когда я нажимаю на телефон, то»). В приложении доступна своя библиотека спрайтов, Paint-редактор и подробные инструкции, которые подскажут, как сделать проекты еще круче. А еще можно публиковать свои работы прямо в приложении, чтобы в них сыграли другие пользователи.
Возраст: от 13 лет
Доступно: iOS (бесплатно)
Эта игра предназначена для изучения Swift — языка программирования, на котором написаны приложения Apple. Мы встречаем персонажа Байт, который живет на своем летающем острове. Нам нужно управлять его жизнью и решать небольшие задачи, следуя текстовым инструкциям. Внизу страницы умная система подсказывает, какую команду лучше использовать.
Также в приложении есть яркие видеоинструкции, которые подскажут, за что отвечают теги и как написать небольшие программы.
Этот вариант идеален для подростков, которые мечтают заняться разработкой приложений. Игра не доступна на смартфонах, но есть на планшетах iPad.
Возраст: от 13 лет
Доступно: iOS (бесплатно), Android (бесплатно)
Игра Grasshopper была создана Google, чтобы познакомить новичков с языком программирования JavaScript в веселом игровом формате. В этом приложении нам предстоит проходить задания и писать текстовый код в мобильном редакторе. Все задачи визуальные, поэтому мы наглядно увидим, что же мы запрограммировали. Интерактивное «дерево» покажет, как далеко мы продвинулись по уровням. А тесты и квизы помогут проверить полученные знания.
Сопровождать нас будет фирменный персонаж — кузнечик. Собственно, в честь него и названо приложение: пользователям предстоит так же весело и активно перепрыгивать с одного задания на другое.
Играть могут как начинающие программисты, так и более опытные. Приложение задает наводящие вопросы и подбирает план обучения под каждого пользователя. Подойдет подросткам, которые хотят заняться веб-разработкой.
Читайте также: