Занимательное программирование

Андрей Ящук
Знакомство с интернетом в далёкие 90е, создавало образ будущего, когда школьник или студент получает все необходимые данные из сети. Решает немыслимые задачи, обсуждая их решения с компьютером. Графики и видео изменяются по моновению пальцев и т.д.
Но уже 21 век, а учебники в школах ничем не отличаются от моих школьных учебников, разве что неотъемлемым атрибутом каждого учебника стал компакт диск, который крепится в районе последних страниц.
     Перебирая множество ресурсов можно отметить, что они просто имитируют книгу - от банальных электронных версий книг до записей лекций преподавателя/учителя у доски. К чему это приводит? Тестирование на собственных детях (их у меня двое) говорит о том, что никакого интереса или упрощения процесса обучения детям, они не привносят.
Наблюдая за тем, как своё время проводят дети за компьютером, я вижу, что детей можно заинтересовать. А добавив в игровой процесс немного практики и теории, то возможно знания будут естественно и быстро закрепляться в детском разуме.
Вот с такой предысторией я изучаю образовательные ресурсы и к счатью стал находить интересные проекты. Это описание последней своей находки - Code Combat.
6fe680af4cc9dcd6c351eca67ae0d437.png
Многие учебные ресурсы, к сожалению, на английском языке, но Code Combat является приятным исключением.
Как только вы перейдёте на главную страницу проекта вас встретит отличный русский язык. Оказывается проект популярный и переводом его на русский язык уже занимается большое число Дипломатов (любой желающий может поддержать проект выступив в одной из шести ролей - Архимагом (программистом ), Ремесленником (создателем уровней), Искателем приключений (тестировщиком уровней), Писарем (редактором статей), Послом (поддержка пользователей) и Дипломатом.
Но это не главное, главное это игровой(обучающий) процесс. Пройдя несложную регистрацию, перед вами открывается начальный экран игры в аркадном стиле.
dfa8e51ff5ccdb6e54647134b067de7c.png

Здесь наверное уместно добавить, что регистрировался я как независимый ученик, но игра подразумевает регистрацию учителей, которые создают классы, своих подопечных и собственно учеников этих классов. Обучение учеников класса изменяет его рейтинг и делает возможным соревнования между классами, вплоть до интерактивных битв.
Бесплатно доступен первый уровень - Подземелье Кидгарда, состоящий из 35 заданий.
Остальные уровни, представляют разные темы, которые можно изучать последовательно. Вот список тем:
Тема Review course overviews and levels

Введение в Информатику

Изучаем базовый синтаксис, циклы while и рабочую среду CodeCombat.
Концептов покрыто: Базовый синтаксис,Аргументы,Строки,Циклы,Переменные,Алгоритмы
Информатика 2

Знакомимся с аргументами, переменными, условиями if и арифметикой.
Концептов покрыто: Базовый синтаксис,Аргументы,Строки,Циклы,Переменные,Условные операторы,Функции,Параметры,Обработка ввода

Разработка игр 1

Учимся создавать свои собственные игры, которые можно показать друзьям.
Концептов покрыто: Базовый синтаксис

Веб разработка 1

Учимся основам веб разработки в этом начальном курсе по HTML и CSS.
Концептов покрыто: Basic HTML,Basic CSS

Информатика 3

Знакомимся с арифметикой, счетчиками, продвинутыми циклами while, управлением циклами break и continue, массивами.

Концептов покрыто: Базовый синтаксис,Аргументы,Условные операторы,Переменные,Строки,Циклы,Арифметика,Продвинутые строки,Функции,Булевая логика,Обработка ввода,Оператор "break",Оператор "continue"

Разработка игр 2

Изучаем более продвинутую разработку игр.
Концептов покрыто: Базовый синтаксис,Функции,Строки,Условные операторы,Аргументы

Веб разработка 2

Учимся продвинутой веб разработке, включая написания скриптов для интерактивных веб страниц.
Концептов покрыто: Базовый синтаксис,Строки,Циклы,Переменные,Аргументы,Условные операторы,Функции,Basic HTML,Basic CSS,Basic Web Scripting

Информатика 4

Знакомимся с литералами объектов, циклами for, определением функций, рисованием и операцией остатка.
Концептов покрыто: Базовый синтаксис,Аргументы,Переменные,Строки,Условные операторы,Арифметика,Циклы,Массивы,Литералы объектов,Циклы "for",Булевая логика

Информатика 5

Знакомимся с параметрами функций, возвращаемыми значениями функций и алгоритмами.
Концептов покрыто: Базовый синтаксис,Аргументы,Переменные,Строки,Циклы,Массивы,Циклы "for",Функции,Арифметика,Литералы объектов,Математические операции,Условные операторы,Графика,Булевая логика,Алгоритмы,Оператор "break"
В первом задании вы можете выбрать своего героя и язык программирования на котором будете управлять героем и собственно, который вы будете изучать. Всего представлено четыре языка - Phyton (по умолчанию), JavaScript, CofeeScript, Lua.

fa8f01e216929a798ab2e60044a4afc5.png

Задание представляет собой задачу для вашего героя, которую нужно выполнить используя простые команды объекта MoveUp(), MoveDown(), attack("";) и т.п.
a210f4fc85aac26a176260512f771027.png

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

Повторяя несложные команды MoveUp, MoveRight, и т.п.  решая первые 7 уровней с дочерью (9 лет) , я в тайне надеюсь на запоминание слов Move, Up, Left . Так как изучени английского для меня первостепенная задача.

Code Combat, оказался очень объёмным - здесь и возможность создавать кланы, клановый войны и т.п. Но для моей скромной цели, пока достаточно и однопользовательского варианта.

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

Ученье свет! :-)



1

Комментарии

Борис Белкин
+30
Скачайте beta ios10. У меня вот появилось странное приложение под названием playgrounds. Обучает работе со SWIFT. Никогда в жизни не программировал и могу сказать, что заинтересовали они меня очень умело. Несравнимо круче представленной выше программы (как мне кажется).
5 сентября 2016 в 00:26
#
Андрей Ящук
+1
Спасибо за наводку, картинка аппетитная! Посмотрим!
P.S. Сегодня, впервые, дочь попросила: " Давай сыграем в ту игру...". Просидели часа полтора, прошла ещё 14 заданий. Честно говоря не понимаю, как подойти из этого к реальному программированию, но читать код и находить отличия, уже получается. А так же запомнили английские Up, Left, Right, Down :-)
5 сентября 2016 в 00:44
#