Образование стоит дорого. Хорошее образование стоит очень дорого. Но тем не менее возможность получить бесплатное и качественное образование есть у каждого. Компании и корпорации во всём мире вкладывают деньги в создание бесплатных образовательных продуктов. Отчасти, чтобы обеспечить себя квалифицированными кадрами в будущем. Отчасти, для преодоления бедности, предоставления всем равного доступ к качественному образованию.
У каждого есть возможность воспользоваться специально созданной для обучения школьников средой программирования Scratch, которую разрабатывают специалисты одного из самых престижных технических учебных заведений США и мира — Массачусетского технологического института. Или игрой Minecraft, за которую Microsoft год назад заплатила $2,5 млрд и с помощью которой, в том числе, планирует обучать детей программированию. Или обучающими играми, которые создают энтузиасты и добровольцы во всём мире.
Препятствием для использования подобных ресурсов может быть неосведомлённость о их существовании или незнание языка. Действительно, англоязычных ресурсов и игр значительно больше. Но существуют и русскоязычные игры, обучающие программированию.
Здесь собраны бесплатные русскоязычные браузерные игры, которые научат составлять алгоритмы и даже писать код. Они размещены в порядке усложнения. Последние из игр в этом списке предназначены для взрослых людей. Вряд ли можно стать программистом только играя. Но можно получить положительный заряд на старте, изучить основные алгоритмические конструкции и логику программирования, приобрести навыки планирования действий при решении практических задач.
Учитесь программировать. Учитесь думать
Code.org
Ресурс создан для детей от 4-х до 10-и лет, но, как утверждают его создатели, подойдет пользователям всех возрастов. Обучение начинается с самых азов — с обучения использованию мышки. Используется scratch-подобный язык состоящий из блоков. Играя ребёнок разберётся с азами программирования, узнает как алгоритм превращается в JavaScript-код и создаст свою собственную компьютерную игру.
Minecraft
Minecraft — совместный проект Microsoft и Code.org. Игра рассчитана на детей от 6 лет и предполагает решение различных задач при помощи построения алгоритмов. Это позволяет детям освоить основы программирования, понять как работают его базовые механизмы.
Minecraft действительно образовательная игра: она развивает пространственное мышление, математические и логические способности. И ещё игра учит чтению и письму, повышает общую грамотность. Впрочем, не только Minecraft имеет такой эффект, а любая деятельность, которой дети увлечены и которая мотивирует их к приобретению новых полезных навыков.
Скретч
Скретч — специальный визуальный язык программирования, который был разработан в MIT для обучения детей. Изучение Скретч проходит в игровой форме. Скретч развивает логическое и критическое мышление, воображение, дети учатся решать разноплановые задачи, у них появляются новые возможности для самовыражения и творчества. Разумеется, необязательно, что ваш ребенок в будущем станет программистом. Однако, обучение детей элементарным основам программирования поможет им развиваться быстрее и веселее.
Blockly
Blockly, как и Скретч, создаёт программу при помощи соединения блоков. Но если Скретч больше подходит для внеклассных занятий, Blockly можно использовать в школе. Эта игра позволяет создавать учебные задания, компоновать их в модули, проходя которые, ученик постепенно осваивает какую-то тему.
Вот, например, как выглядит созданная в Blockly головоломка по странам и флагам:
ПиктоМир
ПиктоМир, разработанный НИИСИ РАН по заказу Российской академии наук, — наш ответ зарубежным аналогам. В НИИСИ РАН уже разработали систему «КуМир», в которой с программированием знакомятся старшие школьники, но игрового элемента в ней нет.
Сюжет игры: на картинке изображен космодром, с которого стартуют космические корабли, и при старте они выжигают покрытие. А поскольку там всё горячее и радиоактивное, то людей посылать восстанавливать покрытие нельзя, и туда посылают робота-вертуна (подозрительно похожего на R2D2). Этому роботу нужно задать программу, чтобы он сам не разбился о бордюрчик (робот в этом случае краснеет) и всё выгоревшее залил защитным составом.
Робот раскрашивает поля, а ребёнок учится составлять алгоритмы. Все подсказки выполнены с помощью графики, поэтому ПиктоМир можно предлагать детям, не умеющим читать, учёные постарались сделать действия понятными даже для малышей.
Первые четыре уровня игры доступны всем, пятый уровень — головоломки для одарённых детей, шестой уровень — головоломки для родителей, чтобы им тоже было интересно.
zesetup напоминает про игру Colobot.
Colobot
Колобот — 3d стратегия, разработаная компанией Epsitec в 2001. Игра призвана обучить детей (от 10 лет и старше) навыкам программирования в игровой форме. Геймплей заключается в создании программ для роботов. Цель — подготовить планеты для заселения и добычи полезных ископаемых.
Особенностью игры является возможность создавать программы, в соответствии с которыми в игре действуют роботы (задавая им алгоритмы самостоятельной работы и заменяя ими монотонные действия, которые может делать и сам игрок), поэтому считается, что игра способствует обучению программированию. Язык программирования, встроенный в игру, похож на C++ или Java, но имеется ограничение на размер программы — не более 20 000 символов, что не позволяет писать серьёзные программы вроде имитации искусственного интеллекта. К каждой миссии прилагается обширная справка с объяснением что необходимо сделать. Также зачастую там есть шпаргалка — готовая программа (или куски программы) с помощью которой можно решить поставленную задачу.
Существует русская локализация игры.
Microsoft Imagine
Microsoft Imagine предлагает средства для обучения и разработки, начиная с самой первой игры или приложения до облачных исследовательских проектов с использованием больших данных. Приложения распределены по уровням сложности. Самые простые из них доступны детям 9-10 лет, более сложные предназначены для старшеклассников и студентов. Использование только некоторых приложений доступно в браузере, для запуска остальных требуется установка бесплатного ПО и операционная система Windows. Ежегодно проводится конкурс Imagine Cup, в котором могут принять участие школьники, студенты и аспиранты из разных стран мира. Главным заданием участников является разработка идеи проекта или игры и создание её прототипа с помощью современных информационных технологий.
JavaRush
JavaRush — изучение программирования на Java в виде онлайн-игры. Каждому уровню соответствует отдельная солнечная система на звездной карте. Лекциям внутри уровня — планеты солнечной системы. Каждая открытая лекция – это перелёт на очередную планету. Когда все лекции открыты, корабль перелетает к следующей звездной системе.
Весь курс Java Core на JavaRush состоит из сорока уровней. Первые 10 уровней доступны всем, уровни 11 и выше доступны при наличии платной подписки.
На каждом уровне JavaRush 10-15 мини-лекций, так что 10 бесплатных уровней — это около 140 лекций и где-то 230 задач. Достаточно, чтобы вы определились, подходит вам JavaRush или нет.
Code Combat
Разработчики Code Combat предлагают учиться программированию, захватывая земли и побеждая врагов в лучших традициях RPG.
Начинать играть можно «с нуля», не имея о программировании никакого представления. Пользователь может выбрать язык программирования, который хочет освоить: Python или JavaScript. Уровни игры выстроены как хороший курс программирования с нарастающей сложностью.
Вам предстоит стать волшебником, который c помощью программного кода меняет окружающий мир. На каждом уровне перед игроком ставится определенная задача — например, найти гриб, который поможет победить людоеда, повести в бой солдат или выбраться из темницы. В начале всё просто, вы пишете код и сразу видите на экране, как он будет выполняться. Потом задачи становятся более сложными, и вам приходится думать всё больше и больше.
Игра имеет 80 бесплатных уровней и открытый программный код. Сотни игроков из разных стран приложили свой талант к тому, чтобы CodeCombat стал лучше. Именно благодаря этому мир воинов и магов оказался быстро переведён на разные языки, в том числе на русский.
Нужно научиться программировать? Вам не нужны уроки. Вам нужно написать много кода и хорошо провести время, занимаясь этим. Это сущность программирования. Это должно быть весело. Не в том смысле, когда «уау, бейдж», а в том, когда «нет, мама, я должен закончить уровень». Вот почему Code Combat — это многопользовательская игра, а не курсы. Мы не остановимся, пока вы не сможете остановиться — но на этот раз это действительно хорошо. (из описания на сайте проекта)
UPD После 18 уровней в игре появляются две ветки — одна платная, вторая бесплатная. В игре 80 бесплатных уровней. По платной подписке доступны 60 дополнительных уровней.
Ещё статьи по теме:
12 игр, которые обучают детей программированию
Мой опыт обучения детей 8-10 лет программированию на Scratch
Приключенческая игра, в которую играют путем изменения её Javascript-кода
FightCode: танковые войны на JavaScript
Обучение программированию через игру или как быстро собрать весь мёд
Colobot и Ceebot
Комментарии (37)
Meklon
13.12.2015 17:42+4О. Спасибо. Ушел учить Python. Пригодится) CodeCombat забавен.
IrinaInina
13.12.2015 18:00+1Удачи :) Тому, кто пройдёт последний 80-й уровень CodeCombat, разработчики обещали помочь с трудоустройством в США.
Meklon
13.12.2015 19:30Мне больше для себя) В лабораторно-исследовательских задачах пригодится. А то только bash, плюс мелкие скрипты на всяком… Ну и немного C.
IrinaInina
13.12.2015 20:02Конечно, даже не сомневаюсь. Но мало ли, вдруг такая возможность послужит дополнительным стимулом.
Meklon
14.12.2015 01:06Эмм… После 18 уровня только за деньги? Там вроде как вываливает варианты платные с плюшками и бесплатный без плюшек. Но бесплатного я не вижу.
UPD. Нашел. ТАм не все уровни доступны.IrinaInina
14.12.2015 01:19Уже 18? Быстро как.
Вот что пишут:
Игра условно бесплатная. Условность кроется в двух критериях. Первый – это покупка дополнительных самоцветов, которые тратятся на снаряжение. Эти же самоцветы начисляются за прохождение уровней. Пока нехватки самоцветов я не ощутил, так что это, думается мне, не преграда. Второй критерий более существенный. В игре есть чуть более 80 бесплатных уровней, для большего необходима платная подписка.
Что она дает:
– Более 60 уровней для дополнительной практики
– Видео-уроки
– Эксклюзивная поддержка по электронной почте
– 7 новых героев с уникальными возможностями для оттачивания мастерства
– 3500 бонусных самоцветов каждый месяц
– Частные Кланы.
Если осилите 80 уровней, а вам все мало, то придется позвенеть золотыми монетами эквивалентом в $9.99 в месяц.IrinaInina
14.12.2015 01:30А вот ещё о нём же:
Там после нескольких уровней две ветки — одна платная, вторая бесплатная. Вторую можно не заметить с первого раза.
Источник.
Хорошие комментарии в той теме по ссылке.
Вот ещё, оттуда же
Я вчера выставлял тематические оценки, посмотрел, есть «оценки за тетрадь», а у моих учеников и тетрадей-то нет! Все их файлы на компах, в сетевой папке или в облаке. Это же информатика, блин, а не чистописание! Завуч дала мне пендаля «а проверка тетрадей?» Проверяйте рабочий код, говорю. Она решила, что я издеваюсь. Так и живём.
boombick
14.12.2015 06:30> Тому, кто пройдёт последний 80-й уровень CodeCombat, разработчики обещали помочь с трудоустройством в США.
А это публичное обещание? :) Можно ссылочку, если таковая имеетсяIrinaInina
14.12.2015 08:46Публичное, да. Ссылка на веб-архив.
Beat This Level, Get a Programming JobDalairen
15.12.2015 11:30+1И там же:
«Update 2: we posted solutions and closed Gridmancer as a recruiting challenge for now, but we are still doing recruiting, so if you'd like us to help you with the job search, get in touch and we'll work with you.»
Так что они вам теперь не помогают за прохождение уровня.IrinaInina
15.12.2015 20:26По-видимому, об обещаниях разработчиков следует говорить в прошедшем времени. Как и о полной бесплатности игры.
OnYourLips
13.12.2015 19:47+1А как же Ruby Warrior?
https://www.bloc.io/ruby-warrior
Похож на последнюю в вашем списке.IrinaInina
13.12.2015 20:00Спасибо. Почти уверена, что видела эту игру. Она в эту подборку входит:
Подборка обучающих игр, которые сделают из тебя программиста
И здесь тоже неплохие игры есть:
10 необычных игр, которые учат программированию и логике
Всё-таки знание английского хотя бы на базовом уровне — большое преимущество.
AlexandrMatveev
13.12.2015 21:29Ещё есть замечательная Human Resource Machine, но она платная и это, скорее, хардкорное программирование на ассемблере для взрослых.
KaneUA
14.12.2015 03:04Из серии хардкорное программирование на ассемблере для взрослых есть TIS-100. Там игровой процесс и есть хардкорное программирование на ассемблере для взрослых.
dreamzor
14.12.2015 00:48+3Однажды очень понравилось проходить этот отличный квест: alexnisnevich.github.io/untrusted
Не совсем для обучения программированию, а, скорее, основам JavaScript — нужно писать мета-код уровня для выхода из лабиринта.
FromArcanum
14.12.2015 08:36Начал проходить CodeCombat, после прохождения первого мира, при выборе уровня, стало возникать окошко с предложением о подписке… Его убираешь, ничего не загружается. Она бесплатна только на пару десятков заданий?
FromArcanum
14.12.2015 08:45не успел отредактировать) действительно две ветки, только раз на 10 заметил, что обозначения уровней двух видов)
Alexnn
14.12.2015 10:34тоже была неплохая игрулька — en.wikipedia.org/wiki/MindRover
вроде можно еще скачать и даже под линукс
Begemoth
14.12.2015 13:46Как-то незаслуженно пропустили LightBot, который есть и для мобильных платформ
IrinaInina
14.12.2015 20:49Известная и популярная игра. Не смогла её включить в обзор, хоть и хотела. Браузерная версия на английском, а русский перевод платный.
Nadoedalo
14.12.2015 15:47+1Посадите детишек за Ultima Online и дайте им EasyUO + документацию, примеры кода, несколько рабочих скриптов — вуаля =)
xDimus
14.12.2015 16:00А не рановато с 4 лет за компьютер?
И кстати, нет ли где обзора-сравнения разный технологий обучения, а то в век компьютеров ещё в ходу… деревянные кубики Никитина, и судя по описанию вроде небесполезная штука…
dzugaru
14.12.2015 22:13Space Chem
Human Resource Machine
TIS-100 (это уже ассемблер конечно, но все равно)
lavkasnov
Остается только вот удивлятся, как я школьником научился программировать на мк-61, который будет позапутанней ассемблера не…
KaneUA
Выбора особого не было, наверное. Как у меня. Есть компьютер с DOS и QBASIC. Дисковод, чтобы Windows поставить, не работает. Пиши сам то, что нужно.
deniskreshikhin
Как раз-таки ничего удивительного, все эти няшности это путь в никуда.
Кстати мы в России такое уже проходили, когда были советские компьютеры в школах и всякие языки типа Кумир, РАПИРА и т.д. Которые вроде как должны были помогать школьникам в обучении программированию. Но по факту, все кому было интересно программирование сразу брались за Бейсик, Паскаль и даже Си. А вот что бы кто-то всерьез увлекался Кумиром или Рапирой я такого не видел.
juryev
Согласен, на самом деле.
Дети проходят эти Логомиры, Скрэтч, а особого толку от этого не наблюдается.
Разве что некоторое овладение терминологией («спрайты» и прочее). Я не заметил реального перехода к нормальным ЯП. Все эти «упрощения» — только усложняют.
mihmig
У Вас было:
1. Свободное время (всего 2 канала ТВ — мультики два раза в неделю)
2. Желание
У Вас не было:
1. 3D шутеров
2. Вконтакта и прочего развлекательного контента
deniskreshikhin
Ну вот по своему детству и друзьям могу однозначно сказать, что не все дети которые играли в шутеры и компьютерные игры вообще стали программистами. Но вот те, которые не играли, точно не стали программистами.